VC 單文檔添加按鈕

孫鑫VC++視頻二十集的第九集有涉及。
部分參考了:http://blog.sina.com.cn/s/blog_4a87cb870100adrm.html

內容爲:

每一個單文檔程序,都固定的有一個CMainFrame類,要產生Button按鈕。兩種方法:

Way 1:

  1. 定義一個CButton類的對象btn。在MainFrm.h裏定義一個private:類型的CButton btn;

  2. 在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函數的return 0;前邊加上btn.Create("豆豆的按鈕",WS_CHILD|WS_VISIBLE,CRect(0,0,100,40),this,123);  注意:(1)btn不能放在OnCreate裏,否則OnCreate的生命期結束了,就析構了btn了。(2)btn.Create裏的第二個參數或上了一個WS_VISIBLE就不用調用btn.ShowWindow(SW_SHOWNORMAL)了。否則需要顯示調用ShowWindow。(3)第四個參數之所以可以是this指針,因爲它是指向對象,是從CWnd派生出來的,所以匹配。第五個參數隨便制定,爲int就好。

運行結果截圖:單文檔中創建按鈕第二個參數或了一個BS_AUTORADIOBUTTON,顯示爲一個三態選擇按鈕。

Way 2:

  1. 在CLesson3View類上右鍵Add Member Viarable。也可以在Lesson3View.h裏添加private:類型的 CButton btn;注意不是在MainFrm.h

  2. 在CLesson3View類上右鍵選擇Add Windows Message Handlers,在New Windows Message/events:裏選擇WM_CREATE,選擇Add Handler,點Edit Existing,看到多了一個Oncreate,在return 0前加代碼即可。

運行結果截圖:單文檔中創建按鈕

//////////////////////////////////////////////////////////////////////////////////////////

way1:

在MainFrm.h裏定義

private:

CButton btn1;

CButton btn2;

CButton btn3;

在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函數的return 0;前邊加上

btn1.Create("開始",WS_CHILD|WS_VISIBLE,CRect(240,5,320,25),this,123);

btn2.Create("暫停",WS_CHILD|WS_VISIBLE,CRect(325,5,405,25),this,124);

btn3.Create("結束",WS_CHILD|WS_VISIBLE,CRect(410,5,490,25),this,125);

運行顯示爲:

VC <wbr>單文檔添加按鈕
其中現實的”豆豆的按鈕“對應下面的操作:

即way2。

可以知道,way1在CMainFrame類中創建的按鈕在標題欄下的任務欄處。

way2在view類中創建的按鈕在窗戶的客戶區內。

////////////////////////////////////////////////////////下面爲按鈕添加處理函///////////////////////////////////////////////////////////////////////////


(1)在窗戶的客戶區內添加按鈕及其響應函數

參考:http://blog.sina.com.cn/s/blog_65bda7120100hfvb.html

第一步:添加一個按鈕
首先在**View.h中定義一個按鈕標識
#define ID_BUTTON 100
其次給C**View類添加一個成員變量
CButton m_myButton;
//這條語句寫在**View.h的類的定義中,要聲明爲PUBLIC類型
然後創建按鈕實例
m_myButton.Create(_T("示例按鈕"), //按鈕的caption屬性,按鈕的顯示
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON|BS_ICON, // 按鈕也是一種窗體,同樣有窗體風格,這些常量通過或運算使按鈕達到一定的效果,這些常量的含義可以參考MSDN。

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