MFC中關閉窗口的幾種辦法:函數
退出程序用AfxGetMainWnd()->SendMessage(WM_CLOSE);工具
關閉當前窗口用DestroyWindow( );code
關閉模式對話框用EndDialog(0);事件
MFC中MessageBox的用法資源
消息框是個很經常使用的控件,屬性比較多,本文列出了它的一些經常使用方法,及指出了它的一些應用場合。
1.
MessageBox("這是一個最簡單的消息框!");
2.
MessageBox("這是一個有標題的消息框!","標題");
3.
MessageBox("這是一個肯定 取消的消息框!","標題", MB_OKCANCEL );
4.
MessageBox("這是一個警告的消息框!","標題", MB_ICONEXCLAMATION );
5.
MessageBox("這是一個兩種屬性的消息框!","標題", MB_ICONEXCLAMATION|MB_OKCANCEL );字符串
6.
if(MessageBox("一種經常使用的應用","標題",MB_ICONEXCLAMATION|MB_OKCANCEL)==IDCANCEL)
return;it
附其它經常使用屬性變量
系統默認圖標,可在消息框上顯示
X錯誤 MB_ICONHAND, MB_ICONSTOP, and MB_ICONERROR
?詢問 MB_ICONQUESTION
!警告 MB_ICONEXCLAMATION and MB_ICONWARNING
i信息 MB_ICONASTERISK and MB_ICONINFORMATIONdate
按鈕的形式
MB_OK 默認
MB_OKCANCEL 肯定取消
MB_YESNO 是否
MB_YESNOCANCEL 是否取消程序
返回值
IDCANCEL 取消被選
IDNO 否被選
IDOK 肯定被選
IDYES 是被選
MFC 文本框 用法
//得到EDIT
CEdit* pBoxOne;
pBoxOne = (CEdit*) GetDlgItem(IDC_EDIT1);
//付值
pBoxOne->SetWindowText( _T"FOO" );
//取值
CString str;
pBoxOne->GetWindowText(str);
GetDlgItem(IDC_EDIT1)->SetWindowText( _T"FOO" );
也能夠
//取值
CString str;
GetDlgItem(IDC_EDIT1)->GetWindowText(str);
EditControl是在MFC對話框中最頻繁的使用的控件之一
VC++2005提供EditControl的屬性和控件事件操做簡單方便
1只容許輸入數字
若是設置EditControl中只能輸入數字,在VC6.0中須要編寫一個派生類來達到目的,而在VC++2005下只須要在屬性對話框中將Number的屬性值設
爲True就能夠了.
2獲取EditControl的內容
兩種方法
第一種,利用MFC應用程序嚮導生成一個基於對話框的應用程序,從資源視圖中選擇該Dialog窗體,利用右側的工具箱,向Dialog內添加一個
EditControl項,聲明控件變量的類別爲Value,變量類型爲CString,變量名爲m_sEdit_Content.
CString m_sEdit_Content;
CString s;
UpdateData(true);
s=m_sEdit_Content.GetString();
MessageBox(s,_T("獲取編輯框的內容"),MB_OK);
s.ReleaseBuffer();
這樣就取得了編輯框的內容
UpdateData(true);這句代碼很重要,它的做用是將輸入的數據裝入EditControl對應的變量m_sEdit_Content中.
因爲MFC應用程序嚮導默認是使用Unicode庫,因此MessageBox中的字符串須要用_T(),不然會出現const char[]轉換LPCTSTR錯誤,若是不使用
Unicode庫就不須要_T().
第二種方法
聲明控件變量的類別爲Control,變量類型爲CEdit,變量名爲m_Edit_Content.
代碼以下(Unicode)
CString s;
s.GetBufferSetLength(1024);
m_Edit_Content.GetWindowTextW(s.GetBuffer(),s.GetLength());
MessageBox(s,_T("獲取文本框的內容"),MB_OK);
s.ReleaseBuffer();
若是不是Unicode下獲取編輯框內容的函數就是GetWindowTextA
3將EditControl中的內容轉化爲整數
在限制編輯框只能數字以後,要將字符串轉化爲整數
聲明控件變量的類別爲Value,變量類型爲CString,變量名爲m_sEdit_Content.
CString s;
UpdateData(true);
s=m_sEdit_Content.GetString();
int n=_tstoi(s);
s.ReleaseBuffer();
n就是所須要的整數
在VC2005下字符串轉換成整數須要_tstoi這個函數
4限制編輯框的輸入長度
聲明控件變量的類別爲Control,變量類型爲CEdit,變量名爲m_Edit_Content.
在對話框初始化的地方寫m_Edit_Content.SetLimitText(1);
編輯框就只能輸入一個字符了.