描述:
本次项目采用一个列表实现快捷键设置,如图
1、选中列表中的一项
2、按下按键,来改变原有的设置
3、保存后生效,注册全局热键
(可以看上一篇 Windows编程注册全局热键)
实现:
一、HandleMessage中过滤出快捷键相关的按键消息
1、条件:选中列表中任意一项,使用一个类成员来获取对应的第二列中的CListContainerElementUI对象,
取消选中时将该类成员置空,既当这个类成员不为空时,在HandleMessage中处理按键消息。
2、方法:当按键按下时记录按键,松开按键后清除记录,组合键需另外处理
二、将键码存储,并转换成对应按键的字符串,显示到界面上
部分代码:
UINT mod = 0;
bool isSet = false;
struct SHORTCUT_INFO_STRUCT {
UINT mod;
UINT vk;