怎麼避免UpdateData()函數彈出對話方塊

來源:互聯網
上載者:User

一個Edit控制項在關聯一個int 變數什麼的時候,用UpdateData()函數跟新資料時,如果Edit上什麼都它會彈出對話方塊來。。

 

                                                                      

 

看起來挺醜的,怎麼避免呢?一個就是用Get(Set)WindowText()函數更新資料,有的有這樣的方法:

if(!UpDateData){     return ; //something}好像不很好,有時不方便,其實把它的變數改成CString 類型的也挺不錯的,這樣就不會亂彈了。。。例如有:Edit控制項Number屬性為TRUE,只能輸入數字。。1、h檔案有CString
m_szDefaultZoomFactor;int
m_nDefaultZoomFactor;2、CPP檔案在DoDataExchange時加點代碼void CPageMeasument::DoDataExchange(CDataExchange* pDX){CPropertyPage::DoDataExchange(pDX);DDX_Text(pDX,
IDC_EDIT2, m_szDefaultZoomFactor);//.....other code..........m_szDefaultZoomFactor.Trim();m_nDefaultZoomFactor
= static_cast<int>(_tstoi((const wchar_t *)m_szDefaultZoomFactor.GetBuffer(0)));      //......other code......}在需要更新資料的地方。。。。。void CPageMeasument::OnOK(){UpdateData(TRUE);       //......other code ......if
((m_nDefaultZoomFactor <= 10) || (m_nDefaultZoomFactor > 2000 ) && (BST_CHECKED==((CButton*)GetDlgItem(IDC_CHECK5))->GetCheck())){CRect
rect;GetDlgItem(IDC_EDIT2)->GetWindowRect(&rect);CPoint
pt = rect.CenterPoint(); pt.x = rect.right-15;m_tooltip.SetDirection(PPTOOLTIP_LEFTEDGE_TOP);if
(0 == m_nDefaultZoomFactor)              //這裡就知道控制項上是空的。。。{m_tooltip.ShowHelpTooltip(&pt,
_T("<center><h2>Check input</h2><br><hr color=blue></center><br>Enter a value"));
}else{m_tooltip.ShowHelpTooltip(&pt,
_T("<center><h2>Check input</h2><br><hr color=blue></center><br>Enter default zoom(10-2000)"));}return
;}CPropertyPage::OnOK();} 

                          

   

,控制項為空白時有檢查,但不是彈出醜陋的AfxMessageBox對話方塊。。。。我的QQ空間http://user.qzone.qq.com/382164370/infocenter#!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.