czxt3000 2022-11-21 18:55 采纳率: 59.8%
浏览 23
已结题

如何禁用拖动控制台滚动条

_open_osfhandle打开控制台后,拖动控制台滚动条,就会造成整个程序停止运行。
如何解决?

  • 写回答

3条回答 默认 最新

  • 骑兔看夕阳 2022-11-21 20:11
    关注
    #include <iostream>
    #include <Windows.h> //VS 自带的头文件
    using namespace std;
    //取消滑框
    void FullScreen() {
        HANDLE Hand;
        CONSOLE_SCREEN_BUFFER_INFO Info;
        Hand = GetStdHandle(STD_OUTPUT_HANDLE);
        GetConsoleScreenBufferInfo(Hand, &Info);
        SMALL_RECT rect = Info.srWindow;
        COORD size = { rect.Right + 1 ,rect.Bottom + 1 };    //定义缓冲区大小,保持缓冲区大小和屏幕大小一致即可取消边框 
        SetConsoleScreenBufferSize(Hand, size);
    }
    int main() {
        while (1) {
            FullScreen();
            Sleep(1000);
        }
        return 0;
    }
    
    
    

    ```

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月21日