建立對話框主要分兩大步,第一,建立對話框資源,主要包括建立新的對話框模板、設置對話框屬性和爲對話框添加各類控件;第二,生成對話框類,主要包括新建對話框類、添加控件變量和控件的消息處理函數等。在本節中先講講怎樣建立對話框模板和設置對話框屬性。本章只是建立基本的對話框,若想樣式、圖標更豐富一些可藉助MFC擴展類庫Xtreme Toolkit Pro。是MFC開發中最全面界面控件套包,它提供了Windows開發所須要的11種主流的Visual C++ MFC控件,包括Command Bars、Controls、Chart Pro、Calendar、Docking Pane、Property Grid、Report Control、Shortcut Bar、Syntax Edit、Skin Framework 和Task Panel。html
建立基於對話框的應用程序框架app
建立步驟同單文檔應用程序大同小異,簡單步驟以下:框架
1.選擇菜單項File->New->Project,彈出「New Project」對話框。函數
2.左側面板中Installed Templated的Visual C++下選擇MFC,中間窗口中選擇MFC Application,而後在下面的Name編輯框中鍵入工程名稱,本例取名「Addition」,在Location編輯框中設置工程的保存路徑。點「OK」。字體
3.點「Next」到「Application Type」對話框,在Application type下選擇Dialog based,其餘使用默認設置,點「Finish」。url
咱們能夠在Solution Explorer視圖中看到,此工程的文件要比單文檔應用程序少的多,在Class View中主要有三個類:CAboutDlg、CAdditionApp和CAdditionDlg。CAboutDlg是應用程序的「關於」對話框類,CAdditionApp是由CWinApp派生的類,CAdditionDlg是主對話框類,主對話框也就是此應用程序運行後顯示的主要界面。.net
注:若是在VS2010中找不到Solution Explorer或Class View等視圖,能夠在菜單項View下找到對應視圖選項選擇便可。htm
在Resource View視圖中能夠看到工程Addition的資源樹,展開Addition.rc,下面有四個子項:Dialog(對話框)、Icon(圖標)、String Table(字符串表)和Version(版本)。而後展開Dialog項,下面有兩個對話框模板,其ID分別爲:IDD_ABOUTBOX和IDD_ADDITION_DIALOG,前者是「關於」對話框的模板,後者是主對話框的模板。ID是資源的惟一標識,本質上是一個無符號整數,通常ID表明的整數值由系統定義,咱們無需干涉。資源
對話框模板
可見對於主對話框來講,建立對話框第一步中的建立新的對話框模板已經由系統自動完成了。而若是是再添加對話框須要建立新的對話框模板時,須要在Resource View的「Dialog」節點上點右鍵,在右鍵菜單中選擇「Insert Dialog」,就會生成新的對話框模板,而且會自動分配ID。
在Resource View的資源樹中雙擊某個ID,可在中間區域內顯示相應的資源界面。雙擊IDD_ADDITION_DIALOG時,中間區域就會顯示Addition對話框模板。以下圖:
設置對話框屬性
在Addition對話框模板上點右鍵,而後在右鍵菜單中選擇Properties,則在右側面板中會顯示對話框的屬性列表。以下圖:
雞啄米在這裏對常常使用的幾個屬性做簡單說明,並對Addition對話框進行屬性設置說明。
1.ID:對話框ID,惟一標識對話框資源,能夠修改。此處爲IDD_ADDITION_DIALOG,咱們不修改它。
2.Caption:對話框標題。此處默認爲Addition,咱們將其修改成「加法計算器」。
3.Border:邊框類型。有四種類型:None、Thin、Resizing和Dialog Frame。咱們使用默認的Dialog Frame。
4.Maximize:是否使用最大化按鈕。咱們使用默認的False。
5.Minimize:是否使用最小化按鈕。一樣咱們使用默認的False。
6.Style:對話框類型。有三種類型:Overlapped(重疊窗口)、Popup(彈出式窗口)和Child(子窗口)。彈出式窗口比較常見。咱們使用默認的Popup類型。
7.System Menu:是否帶有標題欄左上角的系統菜單,包括移動、關閉等菜單項。咱們使用默認的True。
8.Title Bar:是否帶有標題欄。咱們使用默認的True。
9.Font(Size):字體類型和字體大小。若是將其修改成非系統字體,則Use System自動改成False。而若是Use System原來爲False,將其修改成True,則Font(Size)自動設置爲系統字體。這裏咱們使用默認的系統字體。
根據以上說明,其實咱們只修改了標題屬性。這時咱們運行此程序後的界面以下:
這一講就先講到這裏了,對於建立對話框第一步中的爲對話框添加各類控件下一講爲你們演示。