如何获取当前光标?

xmzhy 2003-04-28 10:50:02
我在做人事管理时想实现以下功能:当我填写完员工姓名后,敲回车键,当前光标自动跳到填写部门文本框内,请问如何实现这个功能?
...全文
50 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xmzhy 2003-05-19
  • 打赏
  • 举报
回复
有没有更简单的方法?
edrftgyh 2003-05-06
  • 打赏
  • 举报
回复
还有,至于如何知道m_bIsFocus何时为真何时为假也就是说如何知道员工姓名的CEdit控件
是否正获得焦点,可以通过CEdit控件的两个消息EN_KILLFOCUS和EN_SETFOCUS实现如!
void CMyDlg::OnKillfocusMyedit()
{
m_bIsFocus=FALSE;
}

void CMyDlg::OnSetfocusMyedit()
{
m_bIsFocus=TRUE;
}
edrftgyh 2003-05-06
  • 打赏
  • 举报
回复
BOOL CMyDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message==WM_KEYDOWN)
{
if(pMsg->wParam==VK_ESCAPE)
{
return TRUE;
}
if(pMsg->wParam==VK_RETURN)
{
if(m_bIsFocus)
{
m_ctrBumen.SetFocus();
m_ctrBumen.SetSel(0,-1);
return TRUE;
}
else
{
OnOK();
return TRUE;
}
}
}
return CDialog::PreTranslateMessage(pMsg);
}
如上所示重载PreTranslateMessage函数,并设一个BOOL 变量m_bIsFocus来表示光标是否位于
员工姓名的CEdit控件内!是的话,则
m_ctrBumen.SetFocus();
m_ctrBumen.SetSel(0,-1);
return TRUE;
可以切换光标的Focus,且屏蔽回车键
xmzhy 2003-05-06
  • 打赏
  • 举报
回复
wuchuncai:
如何捕捉这个“回车键”消息。
louifox 2003-05-06
  • 打赏
  • 举报
回复
study
wuchuncai 2003-04-28
  • 打赏
  • 举报
回复
“当我填写完员工姓名后,敲回车键”捕捉这个“回车键”消息,假定“部门文本框内”的ID为IDC_TEST然后GetDlgItem(IDC_TEST)->SetFocus();
xmzhy 2003-04-28
  • 打赏
  • 举报
回复
请大伙帮忙,谢谢!

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧