• 6895阅读
  • 7回复

捕获录制快捷键的LineEdit——ShortcutGrabberEdit [复制链接]

上一主题 下一主题
离线roywillow
 

图酷模式  只看楼主 倒序阅读 楼主  发表于: 2013-05-11
— 本帖被 kimtaikee 从 Qt代码秀 移动到本区(2013-05-14) —
一个用来录制快捷键的小组件,获得焦点后,用户按下自己需要的快捷键,就能将其录制并显示出来。

window.open('http://www.qtcn.org/bbs/attachment/Mon_1305/92_97396_fb9541fb61aa384.png?12');" style="max-width:700px;max-height:700px;" onload="if(is_ie6&&this.offsetWidth>700)this.width=700;" >

目前尚存在一些问题
  1.Linux下没有测试,特别是对ShortcutGrabberEdit::keyReleaseEvent()这部分,是暂时按照windows下的方式处理的
  2.Windows下Win键(Meta键)首先会被系统截获,没被截获的快捷键才会发送进来,但是效果不对,松开所有键确认快捷键时没有信号发出
  3.NumLock点亮的时候QKeyEvent::modifiers()里会包含KeypadModifier,但是这个modifier无法被Qt正确显示出来,并且似乎表现还挺诡异,所以就直接把它滤去后再处理,不清楚这样是不是妥当
  4.我究竟是叫它ShotcutGrabberEdit好呢,还是KeySequenceGrabbderEdit好呢,还是啥呢啥呢啥呢啥呢(强迫症中)

如果各位发现或修复了什么bug,或者有更简洁更可靠的实现方法,请务必告诉我!务必!

代码各位随便使用,能给俺一个credit最好,如果能进天池的话俺立马泪奔去=w=

ShortcutGrabber.zip (3 K) 下载次数:31

专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线roywillow

只看该作者 1楼 发表于: 2013-05-11
呃……图片后的那一串神秘代码是论坛的bug吗?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线ppdayz

只看该作者 2楼 发表于: 2013-05-11
应该是点击图片的动作吧,html代码。。
离线roywillow

只看该作者 3楼 发表于: 2013-05-12
稍作修改,处理了一下KeypadModifier的问题
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线luckyyoung

只看该作者 4楼 发表于: 2013-07-07
我用Qt4.8.4+MinGW4.4.0编译了下,出现这种问题怎么办?:
D:\Qt\QtProgram\ShortcutGrabber\shortcutgrabberedit.h:15: 错误:'void ShortcutGrabberEdit::grabFinished(const QKeySequence&)' is protected
……
D:\Qt\QtProgram\ShortcutGrabber\widget.cpp:20: 错误:expected primary-expression before '[' token
……
Anything is possible!
离线XChinux

只看该作者 5楼 发表于: 2013-07-07
void ShortcutGrabberEdit::grabFinished(const QKeySequence&)

protected方法,不能直接从外部调用。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线kimtaikee

只看该作者 6楼 发表于: 2013-11-20
用上了,多谢.

离线yj_yulin

只看该作者 7楼 发表于: 2013-11-20
qt 5.2 已自带 QKeySequenceEdit
快速回复
限100 字节
 
上一个 下一个