工具條也是常用的控件。MFC中使用CToolBar類來封裝工具條控件的各種操作。通過調用
BOOL Create( CWnd* pParentWnd, DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP, UINT nID = AFX_IDW_TOOLBAR );創建一個窗口,dwStyle中可以使用以下一些工具條控件的專用風格:
創建一個工具條的步驟如下:先使用Create創建窗口,然後使用BOOL LoadToolBar( LPCTSTR lpszResourceName );直接從資源中裝入工具條,或者通過裝入位圖並指明每個按鈕的ID,具體代碼如下:
UINT uID[5]={IDM_1,IDM_2,IDM_3,IDM_4,IDM_5};
m_toolbar.Create(pParentWnd);
m_toolbar.LoadBitmap(IDB_TOOLBAR);
m_toolbar.SetSizes(CSize(20,20),CSize(16,16));//設置按鈕大尺寸
和按鈕上位圖的尺寸
m_toolbar.SetButtons(uID,5);
AppWizard在生成代碼時也會同時生成工具條的代碼,同時還可以支持停靠功能。所以一般是不需要直接操作工具條對象。
工具條上的按鈕被按下時發送給父窗口的消息和菜單消息相同,所以可以使用ON_COMMAND宏進行映射,同樣工具條中的按鈕也支持ON_UPDATE_COMMAND_UI的相關操作,如SetCheck,Enable,你可以將按鈕的當作菜單上的一個具有相同ID菜單項。
在以後的章節4.D 利用AppWizard創建並使用ToolBar StatusBar Dialog Bar會給出使用的方法。