c++ - 如何在控制台程序中获取鼠标位置?

标签 c++ mouse windows-console

如何在 Windows 控制台程序中获取 C++ 中的鼠标单击位置? (点击时返回鼠标位置的变量)

我想用简单的文本命令绘制一个菜单,所以当有人点击时,游戏会注册它并知道位置。除了在单击时获取鼠标位置外,我知道如何做所有我需要做的事情。

最佳答案

您需要使用 *ConsoleInput方法系列(peek、read 等)。这些在控制台的输入缓冲区上运行,includes keyboard and mouse events .总体策略是:

  1. 等待控制台的输入缓冲区句柄 ( ReadConsoleInput )
  2. 确定等待事件的数量(lpNumberOfEventsRead)
  3. 按照您认为合适的方式处理它们(即 MOUSE_EVENTMOUSE_EVENT_RECORD)

您必须表明您想要 retrieve mouse input using SetConsoleMode first though, as illustrated in this MSDN article .

关于c++ - 如何在控制台程序中获取鼠标位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6285270/

相关文章:

c++ - 罗技 LCD SDK (C++)

c++ - 使用ns3在C++中构建拓扑

java - SWT Canvas 是否提供鼠标移动/单击 Activity 区域的工具?

windows - Groovy:在命令行参数中使用&符号

c++ - "__cplusplus"宏扩展成什么?

linux - linux内核中usb鼠标使用了哪些驱动?

c - 如何找到鼠标按钮 'click' 位置 x 和 y?

windows - 如何在 Perl 脚本中的 Windows 控制台上询问密码?

python - 使用 Python (Windows) 更改控制台窗口的位置

c++简单解析带有属性树的boost xml