当前位置: 代码迷 >> QT开发 >> QT中快捷键的实现,该怎么解决
  详细解决方案

QT中快捷键的实现,该怎么解决

热度:76   发布时间:2016-04-25 03:33:41.0
QT中快捷键的实现
环境描述:
1、主对话框MainDialog,包含一个PushButtonA和PushButtonB,点击后弹出子对话框SubDialogA和SubDialogB
2、子对话框SubDialogA,包含一个“响应”,点击后弹出QMessageBoxA
3、子对话框SubDialogB,包含一个“响应”,点击后弹出QMessageBoxB

问题描述:
想实现两个快捷键Ctrl+A和Ctrl+B
在MainDialog下,这两个快捷键都可以响应,分别弹出QMessageBoxA和QMessageBoxB
在SubDialogA中只响应Ctrl+A,弹出QMessageBoxA
在SubDialogB中只响应Ctrl+B,弹出QMessageBoxB

我看了QShortcutContext的几种配置方式,好像没办法实现我这种要求,或者是我没看懂 = =!。

这种要求能否通过事件过滤来实现呢?

请有经验的帮帮忙,给点思路,谢谢了!
QT 快捷键

------解决方案--------------------
可以通过事件过滤器来处理,处理键盘事件,发射自定义的信号,来触发相应的动作!
------解决方案--------------------
建立一个空Qt工程,添加3个文件,注意文件名,因为有include。然后把对应代码拷到3个文件中,跑一下。
  相关解决方案