C++:在控制台应用程序中禁用滚动……?

标签 c++ visual-studio winapi console cmd

我创建了一个无边框(和无滚动框)的控制台应用程序,但我发现如果用户有触摸板并尝试用它滚动控制台,他就能够这样做。 (显然,不能用普通鼠标完成。)

我想禁用此功能。

首先,我想为我的控制台创建某种消息处理系统,就像在 Win32 GUI 编程中一样,但这似乎不必要地困难。

我也考虑过更改缓冲区大小,但我不知道该怎么做(我查看了 SetConsoleScreenBufferSize 但无法对它做任何有用的事情)。

有什么建议吗?

最佳答案

问题已解决..

我不小心使用了 SetConsoleScreenBufferSize(hWnd, dwSize); 而不是 SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE), dwSize);

编辑:仍然有一个小错误。 即使我将 Console Screen Buffer Size 设置得尽可能小,用户仍然可以向上滚动几步(要向下滚动,用户需要滚动得非常快,对于某些原因)我不知道是什么原因造成的,所以如果您有任何想法请告诉我。

关于C++:在控制台应用程序中禁用滚动……?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12994296/

相关文章:

c++ - 无法在继承进程中读取文件

c++ - Winapi:屏幕截图未显示在窗口上

c++ - 结构中的函数不做任何事情

c++ - 有人可以帮我启发这个模板吗?

c++ - 如何在 C++ 中混合使用数组和映射?

c# - 如何对读取输入并写入控制台的控制台程序进行单元测试

visual-studio - 有没有办法在 Azure devops tfs 冲刺板上显示代码审查请求/响应工作项

c# - Visual Studio T4 与 CodeSmith

c++ - 按下空格键时,已删除的复选框重新出现在 TreeView 节点中

c++ - unordered_map<const T, int> 和 map<const T, int> 的区别