将CEdit控件里面出现字符串赋值给m_str,我在EN_CHANGE的消息响应函数里加入以下代码:
********************************************************
if("Beijing"==m_str)
{
fun();
return ;
}
else
{
return ;
}
********************************************************
但是没有响应fun()
EN_UPDAE也一样
请高手指点
********************************************************
if("Beijing"==m_str)
{
fun();
return ;
}
else
{
return ;
}
********************************************************
但是没有响应fun()
EN_UPDAE也一样
请高手指点
需要调用UpdateData()函数。另外的方法:
void CDialogtestDlg::OnChangeEdit1()
{
CString szText;
GetDlgItem(IDC_EDIT1)->GetWindowText(szText);
if("Beijing"==szText)
fun();
}
**************************************
CString m_str;
GetDlgItem(IDC_EDIT_RECEIVE)->GetWindowText(m_str);
UpdateData(FALSE);
if("Beijing"==m_str)
{
MessageBox("Right");
return ;
}
else
{
MessageBox("Error");
return ;
}**************************************
不知道为什么不行
换成UpdateData(TRUE);后没有反映
{
UpdateData();
if (_T("Beijing")==m_str)
{
fun();
return;
}
}
我是在一个大程序里面运行的,没有响应。
但我新建了一个工程后,单击按钮使得CEdit控件(ID为IDC_EDIT_RECEIVE)里面显示Beijing,然后在EN_CHANGE的响应函数里面加入上面代码:
*****************************
CString m_str;
GetDlgItem(IDC_EDIT_RECEIVE)->GetWindowText(m_str);if("Beijing"==m_str)
{
MessageBox("Right");
return ;
}
else
{
MessageBox("Error");
return ;
}*****************************然后CEdit控件里面显示Beijing,随后弹出提示框:Right
改动使CEdit控件里面显示其他字符串时,弹出提示框:Error能够正常响应,我不知道为什么在大程序里面不行。