我的问题是我无法计算如何向下滚动使用ncurses5和鼠标事件。鼠标滚动向上(Ncurses/C++)
我知道这是ncurses5.6 +的一个特性,但在那里我无法知道我是否可以从打包程序获取此版本。
即使我可以得到它,zsh,bash,sh等都可以在每个终端上很好地滚动(如何?),这个硬件功能是什么?我可以在我的C++程序中获得我自己的版本,而不需要添加比ncurses,c stantard和std更多的库吗?
此代码适用于向下滚动,但在尝试集成BUTTON5_PRESSED(因为我的ncurses版本)时不能编译。
所以,其实我可以处理下滚动但不是上滚动。有办法处理两者吗?
// mouse event structure
MEVENT event;
if (getmouse(&event) == OK) {
printw("mouse Event OK");
if (event.bstate & BUTTON4_PRESSED)
wprintw(_win, "Button4\n");
else if (event.bstate & BUTTON5_PRESSED) // does not compile
wprintw(_win, "Button5\n");
}
我实际的代码托管在GitHub上https://github.com/Liroo/Nanotekspice/blob/master/lib/cli/mode/NcursesMode.cpp,检查出来,如果你的动机! (顺便说一句,用它与该命令获取的ncurses格式:./nanotekspice resources/basics/test.nts c=1 --mode=ncurses
)
不要垃圾邮件标签。 C不是C++不是C! – Olaf
这种行为可以编码在C以及C++ ...我认为我可以使用两个标签 –
是的,在Python,Ruby和Brainfuck也是如此。重点是什么?标记您使用的语言,而不是一个不同的语言。第二眼:为什么你也添加了外壳标签?在这里你不是新的,你应该知道[问]并且在问题本身**中提供[mcve] **作为文本。 – Olaf