我让鼠标使用ncurses在bash终端(wsl)中工作,并且它在屏幕的较大部分上都可以正常工作,但有例外-屏幕右侧有一个小的垂直切片,单击时,停止循环监听鼠标事件,直到按下键盘上的任意键。之后,一切恢复正常,直到再次单击它。我的假设是问题出在终端设置之内,可能是终端设置-TERM(我的xterm-256color
),但我完全不熟悉该主题,也不知道应该将其更改为什么。这是代码,以防万一:
mousemask(BUTTON1_PRESSED, NULL);
keypad(stdscr, TRUE);
while(1)
{
int c = wgetch(stdscr);
if (c == '\n')
break;
if (c == KEY_MOUSE)
{
MEVENT event;
if (getmouse(&event) == OK)
//some event
}
}