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);
	}
}
相关推荐
yuanyuan2o210 分钟前
从最小项目开始的 CMake 教程
c语言·开发语言·arm开发·c++·makefile·make·cmake
xh didida2 小时前
算法 -- 位运算
开发语言·c++·算法
hele_two2 小时前
VS Code + CMake 调用 SDL2 & SDL2_image 完整编译教程(Windows 平台)
c++·windows·vscode·图形渲染
量子炒饭大师3 小时前
【优化算法】双指针算法的「义体化」重构 ——【双指针】双指针算法中的指针是如何定义的?如何使用它进行一些简单的算法?
c++·算法·重构·优化算法·双指针
小辉同志3 小时前
62. 不同路径
c++·力扣·多维动态规划
arron88993 小时前
DebugView未打印日志原因
c++
hele_two3 小时前
SDL2高效画实心圆的算法(一)
c++·算法·图形渲染
AbandonForce4 小时前
哈希表(HashTable,散列表)个人理解
开发语言·数据结构·c++·散列表
样例过了就是过了5 小时前
LeetCode热题100 编辑距离
数据结构·c++·算法·leetcode·动态规划
z200509305 小时前
C++中位图和布隆过滤器的一些面试题
开发语言·c++