在VIEW的OnKeyDown中:
void CTestkbView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
switch (nChar)//分析按键
{
case VK_UP : //向上的方向键
case VK_SHIFT : //shift键
case VK_RETURN: //回车键,但是按下回车不起作用,上面两个都正常
}
}为什么VK_RETURN对应的不是回车键?因为用调试的方式,按回车也不能进
到对应的代码,而其它的都正常.
该怎么写?
void CTestkbView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
switch (nChar)//分析按键
{
case VK_UP : //向上的方向键
case VK_SHIFT : //shift键
case VK_RETURN: //回车键,但是按下回车不起作用,上面两个都正常
}
}为什么VK_RETURN对应的不是回车键?因为用调试的方式,按回车也不能进
到对应的代码,而其它的都正常.
该怎么写?
解决方案 »
- 路由器 PPPoE功能的问题?
- 请教关于VC操作EXCEL的问题,重分酬谢
- createcompatibledc()
- 新手请教vc中不同类之间传递参数,或者不同类如何互相调用彼此的对象
- DLL中可以动态分配内存吗?
- 小弟求助,大虾请进——在vc中要加入一个ole编辑匡,可以嵌入word,编辑后存入数据库,如何实现
- 用ODBC连接SQL SERVER改成连接ACCESS怎么INSERT INTO 语句不对啊?
- 如何在对话框中浏览Web页?
- 请教各位大神,如何在vc6.0环境下将ocx控件封装到dll中
- 求职材料中对VC的掌握怎么写?精通,掌握,熟练?
- 褪色文字?
- 如何作多语菜单,能否简单介绍一下?
{
case VK_LEFT:
...
break;
case VK_RIGHT:
...
break;
case VK_UP:
...
break;
case VK_DOWN:
...
break;
case VK_RETURN:
...
break;
}from
http://msdn.microsoft.com/library/en-us/vclib/html/_mfc_cwnd.3a3a.onkeydown.asp?frame=true
nChar
Specifies the virtual key code of the given key. For a list of of standard virtual key codes, see Winuser.h nRepCnt
Repeat count (the number of times the keystroke is repeated as a result of the user holding down the key). nFlags
Specifies the scan code, key-transition code, previous key state, and context code
{
// TODO: Add your message handler code here and/or call default
switch(nChar)
{
case VK_UP:
AfxMessageBox("1");
break;
case VK_SHIFT:
AfxMessageBox("2");
break;
case VK_RETURN:
AfxMessageBox("3");
break;
} CView::OnKeyDown(nChar, nRepCnt, nFlags);
}
我这操作可以,不知道你为什么不行了...
还有,VK_1,VK_2,....为什么不对,键1,键2.....应该怎么表示???
见msdn