如何在 Windows 控制台中禁用用户选择
How to disable user selection in Windows console
我需要在 Windows 控制台中禁用用户鼠标选择。这可能吗?如何?我尝试使用函数 SetConsoleMode()
来禁用鼠标输入,但它没有像我预期的那样工作。仍然可以选择。
控制台的快速编辑模式允许用户使用鼠标快速 select 和复制文本,而无需先进入标记模式(即 Ctrl+M , 或菜单上的编辑 -> 标记)。启用快速编辑模式通常很方便,但它确实会干扰鼠标输入。您可以使用控制台输入缓冲区的句柄禁用它,如下所示:
DWORD prev_mode;
GetConsoleMode(hInput, &prev_mode);
SetConsoleMode(hInput, ENABLE_EXTENDED_FLAGS |
(prev_mode & ~ENABLE_QUICK_EDIT_MODE));
记得在退出时恢复之前的模式。
我需要在 Windows 控制台中禁用用户鼠标选择。这可能吗?如何?我尝试使用函数 SetConsoleMode()
来禁用鼠标输入,但它没有像我预期的那样工作。仍然可以选择。
控制台的快速编辑模式允许用户使用鼠标快速 select 和复制文本,而无需先进入标记模式(即 Ctrl+M , 或菜单上的编辑 -> 标记)。启用快速编辑模式通常很方便,但它确实会干扰鼠标输入。您可以使用控制台输入缓冲区的句柄禁用它,如下所示:
DWORD prev_mode;
GetConsoleMode(hInput, &prev_mode);
SetConsoleMode(hInput, ENABLE_EXTENDED_FLAGS |
(prev_mode & ~ENABLE_QUICK_EDIT_MODE));
记得在退出时恢复之前的模式。