⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_28290.htm

📁 vc
💻 HTM
字号:
<p>
序号:28290 发表者:烂木头 发表日期:2003-01-20 11:16:40
<br>主题:菜鸟提问:一个关于文本框的问题
<br>内容:在MFC中,我怎么样捕获一个文本框的KEYDOWN事件呀?<BR>(在ClassWizard中,文本框没有这个事件呀,是不是要用窗口子类化,在MFC下怎么做?)
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:bird 回复日期:2003-01-20 11:29:26
<br>内容:按键事件有WM_KEYDOWN、WM_CHAR等。这两个事件都可以用来捕捉回车事件。下面假定你的CEdit控件是在一个对话框中。 <BR>&nbsp;&nbsp;&nbsp;&nbsp;1、利用ClassWizard建立一个类CMyEdit,这个类是从CEdit派生来的。 <BR>&nbsp;&nbsp;&nbsp;&nbsp;2、利用ClassWizard建立CMyEdit响应WM_CHAR事件的函数OnChar,然后输入以下代码: <BR>&nbsp;&nbsp;&nbsp;&nbsp;void CMyEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) <BR>&nbsp;&nbsp;&nbsp;&nbsp;{ <BR>&nbsp;&nbsp;&nbsp;&nbsp; if(nChar == VK_RETURN) <BR>&nbsp;&nbsp;&nbsp;&nbsp; MessageBox("Hello!"); <BR>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; CEdit::OnChar(nChar, nRepCnt, nFlags); <BR>&nbsp;&nbsp;&nbsp;&nbsp;} <BR>&nbsp;&nbsp;&nbsp;&nbsp;这样当用户按下回车键后显示消息框。 <BR>&nbsp;&nbsp;&nbsp;&nbsp;3、利用ClassWizard建立一个变量m_Edit1与你的控件对应,同时该控件应为CMyEdit类。 <BR>&nbsp;&nbsp;&nbsp;&nbsp;4、在CDlgDlg::DoDataExchange中加上: <BR>&nbsp;&nbsp;&nbsp;&nbsp; DDX_Control(pDX, IDC_EDIT1, m_Edit1); <BR>&nbsp;&nbsp;&nbsp;&nbsp;这样你的程序就可以捕捉按键了。 <BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:烂木头 回复日期:2003-01-20 11:32:23
<br>内容:多谢!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -