//组合框ID: ID_COMBO1,关联变量m_Combo1;当前对话框类为TheDlg,配置文件路径m_Settingfile;
//步骤一:在类中定义关于该组合框的CBS_EDITUPDATE的消息处理函数
afx_msg void OnCbnEditupdateCombo1();
//步骤二:给该组合框添加关于CBS_EDITUPDATE消息的消息映射,如下:
ON_CBN_EDITUPDATE(IDC_COMBO1, &TheDlg::OnCbnEditupdateCombo1)
//下面就是这个消息处理函数的实现了
{
CString v_EditText="";//用来保存当前编辑框的字符串
int v_Index=-1;
m_Combo1.GetWindowText(v_EditText);
int num=m_Combo1.GetCount();
//清除当前下拉框中的内容
for(int i=0;i<num;++i)
m_Combo1.DeleteString(num-i-1);
for(int i=0;i<num;++i)
{
m_Combo1.InsertString(i,v_EditText);
v_Index=i;
}
if(v_Index!=-1)
m_Combo1.ShowDropDown(TRUE);
else
m_Combo1.ShowDropDown(FALSE);
}
EN_CHANGE和EN_UPDATE的区别:
EN_CHANGE: 当编辑框中的文本被修改,新的文本显示之 “后” 发送此消息
EN_UPDATE: 当编辑框中的文本被修改,新的文本显示之 “前” 发送此消息
————————————————
版权声明:本文为CSDN博主「networmrlc」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/networmrlc/article/details/102761859