【发布时间】:2020-10-11 20:55:54
【问题描述】:
通过以下示例,我可以在终端中获取鼠标位置,直到第 94 列。限制在哪里?
#include <curses.h>
int main()
{
initscr();
cbreak();
noecho();
keypad(stdscr, TRUE);
mousemask(ALL_MOUSE_EVENTS, NULL);
MEVENT event;
for (;;)
if (wgetch(stdscr) == KEY_MOUSE && getmouse(&event) == OK)
mvprintw(0, 0, "Mouse at row=%03d and column=%03d", event.y, event.x);
}
测试于:
- Windows 终端 (WSL2)
- cmd.exe (WSL2)
但它正在工作:
- 薄荷味 (WSL2)
我错过了什么?
在所有终端中,通过使用echo -e "\e[?1000;1006;1015h" 手动启用鼠标报告,我得到了相同的结果。所以看起来 Ncurses 正在使用其他东西......
【问题讨论】:
标签: terminal mouseevent ncurses