我正在为带有触摸屏的设备开发嵌入式应用程序,需要单独处理 QTableView 项目上的单击和长按。单击应该打开编辑对话框,长按应该只选择项目。问题是 Qt 中只有“按下”信号,我不知道处理长按的正确方法是什么。有人可以建议怎么做吗?
问问题
401 次
2 回答
1
与其直接使用 QTableView ,不如将其子类化,然后实现虚函数:-
void mousePressEvent(QMouseEvent *)
void mouseReleaseEvent(QMouseEvent *)
然后,您可以决定如何处理这些事件,创建一个计时器来查看在发布事件之前是否已经过了某个时间。
于 2013-07-10T07:50:19.210 回答
1
在视图的小部件上安装事件过滤器viewport()
并处理其鼠标事件。用于view->indexAt()
找出单击了哪个项目。另请参阅事件过滤器。
于 2013-07-10T08:30:14.043 回答