网站联盟是什么,用ps个人网站怎么做,深圳网络推广外包,学网站开发的书为编辑框添加 int变量的时候下面有2空可以填写最大值与最小值#xff1b;或者自己添加代码DDV_MinMaxInt(pDX, m_nPort, 1, 65535);但是这个不一定要工作。解决方法#xff1a;给编辑框添加一个失去焦点(killfocus)的消息#xff0c;在里面UpdateData(TRUE)一下就搞定。原因…为编辑框添加 int变量的时候下面有2空可以填写最大值与最小值或者自己添加代码DDV_MinMaxInt(pDX, m_nPort, 1, 65535);但是这个不一定要工作。解决方法给编辑框添加一个失去焦点(killfocus)的消息在里面UpdateData(TRUE)一下就搞定。原因是当失去焦点时候同步一下窗体和相关变量的值这样子系统才能正确判断是否超过设定的范围。不过又出现另一个原因只要你输入的值不在 设定范围里那么你的焦点就不能离开控件因为会一直弹窗提示的。解决方法去掉DDV_MinMaxInt(pDX, m_nPort, 1, 65535)在killfocus函数里自己写代码判断。{UpdateData(TRUE);if ((m0) || (m65535)){MessageBoxW(NULL, L数值超过范围!, L错误, MB_OK);m 0;UpdateData(FALSE);}}注其实这样做和第一种没什么区别只是更灵活一些。CString类型变量可以设定字串长度。补充经过TechWalker提醒程序用户可能在输入之后没有让编辑框失去焦点而是直接按回车键进入下一步操作那么本文上面所说的则会有问题。于是我搜索了一下应该用EN_CHANGE消息而不是KillFocus消息。{//TODO: If this is a RICHEDIT control, the control will not//send this notification unless you override the CDialog::OnInitDialog()//function and call CRichEditCtrl().SetEventMask()//with the ENM_CHANGE flag ORed into the mask.//TODO: Add your control notification handler code here UpdateData(TRUE);if ((m_nEditNum100) || (m_nEditNum1)){m_nEditNum 1;UpdateData(FALSE);}}