首页
社区
课程
招聘
edit类子类化所遇到的问题,求帮助。
发表于: 2012-3-30 21:13 4071

edit类子类化所遇到的问题,求帮助。

2012-3-30 21:13
4071
想实现一种类似一些软件在让用户设置热键的那个edit编辑框,主要和Edit不同的是按下一些控制键的时候会显示控制键的名字,比如按ctrl+shift+alt+a,就会在Edit框里显示ctrl+shift+alt.我想应该是对Edit进行的子类化。自己琢磨几天也没行通。能给个思路或者代码吗?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 952
活跃值: (1821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这个我做个 不用子类化 只要响应WM_KEYDOWN消息就行了
在处理函数里检测ctrl shift alt 这些键的状态 再转化成文本显示在edit里就行了
2012-3-30 21:20
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
有代码吗?处理Wm_keydown消息我试过,但是好像它是针对某个键的,当按下ctrl等时就产生了一个Wm_keydown消息。
2012-3-30 22:16
0
雪    币: 952
活跃值: (1821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
你是用sdk还是mfc?
2012-3-30 22:55
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
masm32,如果是C/c++多少能看懂一点。
2012-3-30 22:57
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
难道说按下Ctrl+alt+a会产生3个消息?ctrl,ctrl+alt,ctrl+alt+a,但是Alt是Wm_syskeydown消息。。。
还是说产生的是Ctrl,alt,a这3个?
2012-3-31 11:20
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
再顶顶,非常希望得到各位大大的帮助,那怕给个思路也好啊。
按下ctrl alt a会产生2个Wm_keydown和一个wm_syskeydown消息。对应每次按键。但是通过对比每个消息的lparam值,发现并没有相应的控制键状态位。求解。
2012-3-31 18:51
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
解决了,原来有个通用控件,叫做 msctl_hotkey32的类。vc中是HOTKEY_CLASS。还是谢谢大家。
2012-3-31 23:22
0
游客
登录 | 注册 方可回帖
返回
//