MFC有个OnKeyDown函数,具体有三个参数。
afx_msg void OnKeyDown(
UINT nChar,
UINT nRepCnt,
UINT nFlags
)
其中,第一个参数表示哪个按键。
nChar
Specifies the virtual key code of the given key. For a list of of standard virtual key codes, see Winuser.h
这些虚拟键值,有一些是系统常量,以VK_打头。比如Shift是VK_SHIFT(我不知道怎么区分左右),这些虚拟键值,可以在资源窗口中新建一个Accelerator,然后在右边双击,打开新建快捷键对话框,如图中红圈所示。
也可以直接使用无符号整数。
如果想知道具体哪个键对应哪个整数,可以专门写一个MFC程序,构造一个OnKeyDown函数,再使用一个控件输出nChar,就可以了。
其实我也是一知半解,希望对你能有所帮助。如果还有什么问题,可以发站内信,我一定知无不言。
参考资料是在线MSDN,可以看一看。
如果要使edit ctrl能输入回车键: 更改edit ctrl属性, 勾选Multiline, 勾选Want return
如果仅捕获edit ctrl处输入了回车: 增加PreTranslateMessage( )
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)