博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编辑框输入不合法时保持原有的值的做法
阅读量:6450 次
发布时间:2019-06-23

本文共 717 字,大约阅读时间需要 2 分钟。

作者:朱金灿

来源:

 

   很多时候当编辑框输入的数据不合法时我们想显示输入前的值。如何实现这个功能呢?

这时需要给编辑框发送EM_UNDO消息。

     具体做法可以参考如下:编一个简单的对话框测试程序,添加两个编辑框,其中一个ID为IDC_EDIT1,然后添加下面代码:

void CTestEditDlg::DoDataExchange(CDataExchange* pDX){	CDialog::DoDataExchange(pDX);  // m_nNum为对话框的int型数据成员	DDX_Text(pDX, IDC_EDIT1, m_nNum); }BEGIN_MESSAGE_MAP(CTestEditDlg, CDialog)	ON_WM_SYSCOMMAND()	ON_WM_PAINT()	ON_WM_QUERYDRAGICON()	//}}AFX_MSG_MAP	ON_EN_KILLFOCUS(IDC_EDIT1, &CTestEditDlg::OnEnKillfocusEdit1)END_MESSAGE_MAP()// IDC_EDIT1编辑框失去输入检点时响应void CTestEditDlg::OnEnKillfocusEdit1(){	// TODO: 在此添加控件通知处理程序代码	UpdateData(TRUE);	if(m_nNum>100)	::SendDlgItemMessage(m_hWnd,IDC_EDIT1,EM_UNDO,0,0);}

参考文献:

1.

转载于:https://www.cnblogs.com/lanzhi/archive/2012/06/06/6470784.html

你可能感兴趣的文章
理解Javascript参数中的arguments对象
查看>>
p2:千行代码入门python
查看>>
bzoj1106[POI2007]立方体大作战tet*
查看>>
解决:Java调用.net的webService产生“服务器未能识别 HTTP 标头 SOAPAction 的值”错误...
查看>>
spring boot configuration annotation processor not found in classpath问题解决
查看>>
【转】正则基础之——神奇的转义
查看>>
团队项目测试报告与用户反馈
查看>>
MyBatis(1)——快速入门
查看>>
对软件工程课程的期望
查看>>
CPU高问题排查
查看>>
Mysql中文字符串提取datetime
查看>>
CentOS访问Windows共享文件夹的方法
查看>>
IOS 与ANDROID框架及应用开发模式对比一
查看>>
由中序遍历和后序遍历求前序遍历
查看>>
JQUERY Uploadify 3.1 C#使用案例
查看>>
coursera 北京大学 程序设计与算法 专项课程 完美覆盖
查看>>
firewall 端口转发
查看>>
wndows make images
查看>>
FS系统开发设计(思维导图)
查看>>
我学习参考的网址
查看>>