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);
	}
}
相关推荐
码小猿的CPP工坊27 分钟前
C++跨平台开发之基于wxWidgets开发GUI程序简介-002
开发语言·c++
chenbingjie_c38 分钟前
C++ 继承全解析(从三种继承方式到菱形继承与内存布局)
开发语言·c++
火22538 分钟前
# C++ 微服务即时通讯系统(四):MySQL、Redis 与 Elasticsearch——数据分工与一致性
c++·mysql·微服务
xiaoye-duck11 小时前
《C++ 工具库实战》gflags 命令行参数解析库详解
c++·第三方库
狂奔的sherry11 小时前
C++ 宏生成访问函数的代价:访问权限、调试和类型检查
c++·宏·编译·预处理器·类型检查
划破黑暗的第一缕曙光13 小时前
[C++]:5.STL:string(2)
java·c++·redis
小超人诞生日记15 小时前
C++ 异常机制详解:从抛出捕获到异常安全
c++·算法
多弗朗皮卡丘15 小时前
C++的IO流
开发语言·c++·io流·文件io流
xiangyun6117 小时前
C++ 手撕 shared_ptr:引用计数与控制块到底长什么样?
开发语言·c++·算法·面试·stl
SunkingYang17 小时前
C++14 vs C++17:新特性对比与用法指南
c++·新特性·用法·c++14·示例·c++17