MFC 教程-文本框失去焦点处理

【1】增加窗口的消息处理函数

cpp 复制代码
void CTESTMFCDlg::OnKillFocus(CWnd* pNewWnd)
{
	//CDialogEx::OnKillFocus(pNewWnd);
	//首先使用true将数据从控件传入成员变量中
	UpdateData(true);

	//校验成员变量m_data中的数据是否符合要求,如果不符合,修改后将它显示在控件中
	if (m_editStringFind == "")
	{
		m_editStringFind = "客户";
		UpdateData(false);
	}

	// TODO: 在此处添加消息处理程序代码
}

运行发现没有反应(捂脸)

【2】解决方法

在对话框头文件中添加:afx_msg void OnKillFocus(CWnd* pNewWnd);

在消息映射中添加:

ON_EN_KILLFOCUS(IDC_EDIT_FIND, &CPDFMFCDlg::OnKillFocusEditBox)

在对话框CPP文件中添加:

cpp 复制代码
void CTESTMFCDlg::OnKillFocusEditBox() {

	//首先使用true将数据从控件传入成员变量中
	UpdateData(true);

	//校验成员变量m_data中的数据是否符合要求,如果不符合,修改后将它显示在控件中
	if (m_editStringFind == "")
	{
		//m_editStringFind = "客户";
		UpdateData(false);
	}
}
相关推荐
kpl_2037 分钟前
智能指针(C++)
c++·c++11·智能指针
Darkwanderor1 小时前
高精度计算——基础模板整理
c++·算法·高精度计算
Tanecious.2 小时前
蓝桥杯备赛:Day5-P1036 选数
c++·蓝桥杯
mmz12072 小时前
深度优先搜索DFS(c++)
c++·算法·深度优先
憧憬从前3 小时前
算法学习记录DAY1
c++·学习
A.A呐4 小时前
【C++第二十四章】异常
开发语言·c++
xiaoye-duck4 小时前
《算法题讲解指南:动态规划算法--子序列问题》--29.最长递增子序列的个数,30.最长数对链,31.最长定差子序列
c++·算法·动态规划
森G4 小时前
39、拓展知识---------事件系统
c++·qt
tankeven4 小时前
HJ164 太阳系DISCO
c++·算法
君鼎4 小时前
C++17 新特性全面总结
c++