GetFocus 判断一下当前是哪个slider获取焦点
解决方案 »
- unknown error Ox800A0BCD 求帮组
- 使用重叠I/O如何获取客户端IP地址
- 怎么用VC实现,类QQ聊天窗口,有相似的类不?自己画太花时间,在此请教一下
- vc邮件发送问题
- 用C和WIN32得到窗口
- 找到一个不错的系统工具源码MadCollection,适合学习
- 我用Create(DWORD dwstyle, CRect &rect, CWnd *pParent, UINT id)函数声明了一个控件,怎么才能使我声明的这个控件的背景透明啊?急急急
- 结构可以整体复制吗?
- SOS!!如何有效的隐藏系统任务栏,请各位高手指点迷津,高分赠送!
- 请问OUTLOOK的通讯录怎么读取
- 如何让EDIT和list control控件不接受焦点?
- 一个奇怪的问题,熟悉VS2010IDE的大神给解答一下
具体怎么写呢?(我现在是按enter键切换)
首先我怎么能让他只在slider control之间切换?
其次怎么让他切换到slider 上以后可以用上下左右键调节?
最后这是我现在的代码,为什么没有实现在现有控件上的焦点切换?我的:BOOL CMFCpDlg::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message==WM_KEYDOWN)
{
switch (pMsg->wParam)
{
case 'h':
case 'H':
OnClickedButton1();
break;
case 'B':
case 'b':
OnClickedButton2();
break;
case 'c':
case 'C':
OnClickedButton3();
break;
case VK_ESCAPE :
OnClickedButton4();
break;
case 'S':
case 's':
OnBnClickedButton7();
break;
case 'R':
case 'r':
OnBnClickedButton6();
break;
case 'O':
case 'o':
OnBnClickedButton8();
break;
case 'P':
case 'p':
OnBnClickedButton9();
break;
case 'Q':
case 'q':
cvDestroyAllWindows();
break;
case VK_RETURN :
CWnd *mwnd = GetNextDlgTabItem (GetFocus()); //取得当前焦点控件的下一个控件的句柄
if (mwnd)
{
mwnd->SetFocus(); //设置下一件控件得到输入焦点
return TRUE;
}
break;
}
}
return 0;
}
什么代码也不用写,在界面编辑器里的窗口上拖6个Slider上去,按Ctrl+D,设置一下他们TAB选中的顺序,
编译运行,就可以用TAB在这六个Slider上切换了,切换到哪个,按键盘的左右键就能调整Slider。如果界面上还有按钮什么的,不想TAB切换到按钮上的话,把按钮的Tabstop属性设置为flase即可。