MFC死键是什么啊!不懂!

MFC死键是什么啊!不懂!,第1张

在某些非U.S.英语键盘上,有些键用於给字母加上音调。因为它们本身不产生字元,所以称之为「死键」。例如,使用德语键盘时,对於U.S.键盘上的+/=键,德语键盘的对应位置就是一个死键,未按下Shift键时它用於标识锐音,按下Shift键时则用於标识抑音。

当使用者按下这个死键时,视窗讯息处理程式接收到一个wParam等于音调本身的ASCII或者Unicode代码的WM_DEADCHAR讯息。当使用者再按下可以带有此音调的字母键(例如A键)时,视窗讯息处理程式会接收到WM_CHAR讯息,其中wParam等於带有音调的字母「a」的ANSI代码。

因此,使用者程式不需要处理WM_DEADCHAR讯息,原因是WM_CHAR讯息已含有程式所需要的所有资讯。Windows的做法甚至还设计了内部错误处理。如果在死键之后跟有不能带此音调符号的字母(例如「s」),那么视窗讯息处理程式将在一行接收到两条WM_CHAR讯息-前一个讯息的wParam等於音调符号本身的ASCII代码(与传递到WM_DEADCHAR讯息的wParam值相同),第二个讯息的wParam等於字母s的ASCII代码。

MFC确实有很多病诟,但是他仍然是一种非常方便的程序开发工具。

不管Microsoft是不是真的打算停止维护MFC,至少在很长一段时间MFC开发的程序仍然能在各大Windows平台上运行,这才是重点,一个好用,你也用习惯了的工具,你也仍将继续使用它。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7939453.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存