MFC 固定按鈕工具欄

2021-10-21 05:57:38 字數 1477 閱讀 1710

通過mfc嚮導建立的應用程式,預設情況下工具欄是可以改變位置的,也就是說可以在父窗體上移動,但本例項建立了不能夠改變按鈕位置的工具欄。效果如下圖所示。

系統環境:windows 10

開發環境:visual studio 2019

mfc嚮導建立的工具欄是使用c*******類的createex方法實現的,該方法建立的工具欄其左側有條導航線,而且可以對工具欄進行拖動,要建立固定按鈕的工具欄需要使用c*******類的create方法實現。

create方法同createex方法一樣都是用來建立工具欄的。具體語法如下:

bool create

( cwnd* pparentwnd, dword dwstyle = ws_child | ws_visible | cbrs_top, uint nid = afx_idw_******* )

;引數說明:

pparentwnd:指定父窗體指標。

dwstyle:指定工具欄樣式。

nid:設定工具欄資源id。

(1)新建乙個基於單文件檢視結構的應用程式。

(2)向工程中新增id屬性為idb_bitmap1的工具欄位圖。

(3)在cmainframe類的oncreate函式中建立工具欄,函式實現**如下:

int cmainframe:

:oncreate

(lpcreatestruct lpcreatestruct)if(

!m_wndstatusbar.

create

(this)

) m_wndstatusbar.

setindicators

(indicators,

sizeof

(indicators)

/sizeof

(uint));

// todo: 如果不需要可停靠工具欄,則刪除這三行

//是工具欄可以停靠

//m_wnd*******.enabledocking(cbrs_align_any);

//是主框架可以被停靠

//enabledocking(cbrs_align_any);

//控制項條停靠到框架視窗

//dockcontrolbar(&m_wnd*******);

return0;

}

工具欄的建立方法

使用c*******類的createex方法可以建立增強效果的工具欄,而create方法可以快速的建立工具欄,使用create方法只設定乙個父窗體指標引數即可,但create方法建立的工具欄樣式比較簡單。

參考: 《visual c++從入門到精通(專案案例版)》

MFC工具欄按鈕下拉

1.首先在cmainframe oncreate 函式下新增如下 讓工具欄有下拉能力和向下的箭頭按鈕 讓工具欄具有處理下拉箭頭的能力 dword dwexstyle tbstyle ex drawddarrows m wnd get ctrl sendmessage tb setextendedst...

MFC 工具欄按鈕追加顯示文字

工具欄中的按鈕並不一定是都顯示按鈕文字的,使用者可以根據當前的操作隨時變化,這樣可以提高程式的應用性。本例項根據是在工具欄按鈕追加文字的顯示。效果如下圖所示 系統環境 windows 10 開發環境 visual studio 2019 使用方法setbuttontext就可以設定按鈕上的文字。c ...

MFC工具欄程式設計

竅門 1 要在工具欄增加乙個分割欄,只要拖動某乙個按鈕稍稍往右移動一點便可以了。2 要刪除乙個工具欄按鈕,只要點住它,把它拖出工具欄即可。1 在窗體的右邊新建乙個工具欄。首先,在resourceview中的 右鍵選擇insert 新建乙個工具欄idr 1。畫上幾個按鈕。然後再mainframe中新增...