如题!
解决方案 »
- 关于ListCtrl的图标。。死活出不来呢?
- doc里处理数据,view里作显示处理
- XORPEN 异或模式可以擦除画的图形,但擦不除输出的文字,有什么解决办法?
- 绝对的新手,VC,C,C++,还有 C++ Builder 这4个不都是C 吗,都是什么区别啊,糊涂了,能给我解释一下吗?
- 哪位大哥给一个适用于window95以上所有版本的操作系统下可以读取硬盘物理序列号的VC例子?
- sendmessage总是发送不成功咋办?
- 如何取的ListView标题栏文本
- 为什么说使用内联可以降低函数调用的系统开销??
- 请教,VC++中怎么用Chart控件实现动态图表啊?
- 图象排序
- 菜鸟问大虾:如何在程序中动态调整控件的显示层次?可以调整吗?
- 用穷举法解密
{
if(pMsg->message == WM_KEYDOWN)
{
if((unsigned char)(pMsg->lParam >> 16) == 80)
{
AfxMessageBox("小键盘下箭头");
}
}
return CDialog::PreTranslateMessage(pMsg);
}
其它键类似处理
主要是这句:if((unsigned char)(pMsg->lParam >> 16) == 80)
多谢。
VK_LEFT 25 LEFT ARROW key
VK_UP 26 UP ARROW key
VK_RIGHT 27 RIGHT ARROW key
VK_DOWN 28 DOWN ARROW key
是这几个吗?就算是16进制转换一下也不对啊 !试了一下还不行,还请赐教!
VK_UP 38
VK_RIGHT 39
VK_DOWN 40
小键盘上的向下应该是 VK_NUMPAD2 62
另外,WM_KEYDOWN里面的wParam保存的才是按键的Virtual-keycode值。
至于lParam保存的东西查看了MSDN发现很复杂,唉,英文不好!请高手指教?
BOOL CTemp2Dlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message == WM_KEYDOWN)
{
if((unsigned char)(pMsg->wParam ) == 0x62)
{
AfxMessageBox("你按了小键盘上的向下键·");
}
}
return CDialog::PreTranslateMessage(pMsg);
}