关于CString总结(zz)

关于CString总结

 

 

 

BOOL mfcWnd::OnCommand(WPARAM wParam, LPARAM lParam) { // TODO: 在此添加专用代码和/或调用基类 UINT nID = LOWORD(wParam); //HWND hWndCtrl = (HWND)lParam; int nCode = HIWORD(wParam); if (nID == IDC_EDIT1) { if (nCode == EN_SETFOCUS) { CString tmp; m_Edit2.GetWindowText(tmp); int value = atoi(tmp.GetBuffer()); m_Edit0.SetValue(value, 50); } else if (nCode == EN_KILLFOCUS) { CString tmp; m_Edit2.GetWindowText(tmp); int value = atoi(tmp.GetBuffer()); CheckData(m_Edit0, value, 50); } } else if (nID == IDC_EDIT2) { if (nCode == EN_SETFOCUS) { //m_nFocusEditId = nID; m_Edit1.SetValue(10, 100); } else if (nCode == EN_KILLFOCUS) { CheckData(m_Edit1, 10, 100); } } else if (nID == IDC_EDIT3) { if (nCode == EN_SETFOCUS) { //m_nFocusEditId = nID; m_Edit2.SetValue(1, 9); } else if (nCode == EN_KILLFOCUS) { CheckData(m_Edit2, 1, 9); } } return CDialogEx::OnCommand(wParam, lParam); } inline void mfcWnd::CheckData(CEdit& edit, int MinValue, int MaxValue) { CString tmp; edit.GetWindowText(tmp); if (CheckStrIsDig(tmp.GetBuffer())) { int value = atoi(tmp.GetBuffer()); if (value < MinValue || value > MaxValue) { char tt[2222]; sprintf(tt, "请输入%d~%d之间的值", MinValue, MaxValue); uc1601(tt, 1); char zz[256]; sprintf(zz, "%d", (MinValue + MaxValue) / 2); edit.SetWindowText(zz); } } else { char tt[2222]; sprintf(tt, "非法输入,请输入的%d~%d之间的整数值", MinValue, MaxValue); uc1601(tt, 1); char zz[256]; sprintf(zz, "%d", (MinValue + MaxValue) / 2); edit.SetWindowText(zz); } } 在mfcWnd中使用了OnCommand(WPARAM wParam, LPARAM lParam) 导致输入值非法时,提示两次,怎么解决提示为一次
06-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值