在我的应用程序中,我有一个项目的桌面视图和一个侧面板“预览”:最新选择的项目。
我希望点击某个项目来更改选择,然后双击以执行“运行”动作。更具体地说,我希望“run”-action(包括键导航和按Enter键)绑定到表格行中项目的“激活”。
我的问题是;单击不仅会更改选择,还会触发项目上的“激活”信号。我想调整它:
导航键,单个鼠标单击:选择更改,更新预览面板 输入键,双键鼠标单击:激活/运行/打开操作触发。
是否有一个很好的干净方法,或者覆盖onclick / doubleclick事件我最好的选择?或者是否有其他表格列表小部件更适合我的需求?
答案 0 :(得分:3)
我会将预览操作的插槽连接到表视图的selectionModel()的currentChanged()信号。这包括单击和键导航。
然后双击和Enter键有两个选项:
答案 1 :(得分:0)
要么我的方法错了,要么我太累了,但是如果你想触发一个跑步事件,你应该完全避免激活的信号。设置信号插槽机制,以便双击和Enter键按下事件触发run()函数,然后单击/导航按钮应触发“激活”插槽,它将在tableview中返回索引。
我非常肯定Qt希望您明确指出哪个信号指向哪个插槽或它将忽略它或指向默认值。