2009.3.19 mfc 筆記 (1)

 1.如何將一個a類的控件m和c類(c繼承a)相關聯?

      一般c類是自己寫的新類,繼承a類,控件m可以拖可以自己create;假設控件的id爲IDC_MYID;則寫上下面這兩句就ok了:

      c my_a;

      my_a.SubclassDlgItem(IDC_MYID,this);

      這樣控件m就變成c類的控件了。

2.MFC中tab control的使用方法:

    (1)先Insert Dialog,添加2個或者更多對話框,併爲這些對話框添加類。將對話框的style改爲child, Border改爲none.

    (2)在主對話框中加入一個tab control 控件,併爲其添加一個CTabCtrl類型的變量 m_Tab.

    (3)在主對話框的OnInitDialog()函數中增加:

                   m_Tab.InsertItem(0,_T("第一頁"/*此爲tab的第一個標籤上顯示的字*/));

                   m_Tab.InsertItem(1,_T("第二頁"));

    (4)在主對話框的頭文件(.h)文件中,加入各個標籤頁的對象,(例如標籤頁的類分別爲A,B;)則寫上  A a;B b;

    (5)在主對話框的OnInitDialog()函數中加上:

                   a.Create(IDD_CA,&&m_Tab); b.Create(IDD_CB,&&m_Tab);

         第一個參數爲標籤頁的ID,第二個爲tab控件的變量

    (6)在主對話框的頭文件中加入:

                   int  choose;//用來指示選中了第幾頁(0,1,2,3……)

                   CDialog* c[2];//用來保存標籤頁的指針。

    (7)在主對話框的(.cpp)文件中,OnInitDialog()函數里加上:

                   c[0]=&a;      c[1]=&b;

                   c[0]->ShowWindow(SW_SHOW);

                   c[1]->ShowWindow(SW_HIDE);

                   choose=0;

    (8)在Tab控件的OnTcnSelchangeTab1事件中加入:

                   c[choose]->ShowWindow(SW_HIDE);

                   choose=m_Tab.GetCurSel();

                   c[choose]->ShowWindow(SW_SHOW);

                   *pResult=0;

     ok,完成。      

3.MFC的全局變量怎麼寫?

     其中一種簡單的方法是(1)在stdafx.cpp中 int a; (2)在stdafx.h中 extern int a;

 

4.To Be Continued…………………………

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章