VC MFC中使用工具欄控件詳解

VC MFC中使用工具欄控件詳解

ID:43842828

大?。?97.51 KB

頁(yè)數(shù):9頁(yè)

時(shí)間:2019-10-15

VC MFC中使用工具欄控件詳解_第1頁(yè)
VC MFC中使用工具欄控件詳解_第2頁(yè)
VC MFC中使用工具欄控件詳解_第3頁(yè)
VC MFC中使用工具欄控件詳解_第4頁(yè)
VC MFC中使用工具欄控件詳解_第5頁(yè)
資源描述:

《VC MFC中使用工具欄控件詳解》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、VCMFC工具欄(CToolBar)控件VCMFC工具欄(CToolBar)控件工具欄工具欄控件在控件面板里沒(méi)有對(duì)應(yīng)的選項(xiàng)(圖標(biāo)),但有一個(gè)工具欄控件類CToolBar,所以我們?nèi)绻獎(jiǎng)?chuàng)建一個(gè)工具欄控件并顯示在窗口里的話,只能用代碼來(lái)完成,事實(shí)上任何一種控件,都可以用代碼創(chuàng)建,如CButton按鈕類,現(xiàn)舉一個(gè)用代碼創(chuàng)建按鈕控件并顯示在窗口里的例子。CButton類的Create成員函數(shù)可以創(chuàng)建一個(gè)按鈕控件,這個(gè)函數(shù)的格式如下:BOOLCButton::Create(?????LPCTSTRlpszCaption,//按鈕顯示的文本?????DWORDd

2、wStyle,//按鈕樣式?????constRECT&rect,//按鈕控件顯示的區(qū)域(大?。┫鄬?duì)于父窗口?????CWnd*pParentWnd,//按鈕的父窗口(按鈕屬于哪個(gè)窗口)?????UINTnID//指明按鈕控件ID號(hào)????);這個(gè)函數(shù)的第二個(gè)參數(shù)dwStyle是按鈕控件的樣式,也就是在可視化添加按鈕控件時(shí),右擊按鈕控件,選擇屬性,之后會(huì)彈出一個(gè)對(duì)話框,這個(gè)對(duì)話框有一個(gè)樣式的選項(xiàng),該參數(shù)即對(duì)應(yīng)這個(gè)樣式。好了,了解了上面這些我們就來(lái)動(dòng)態(tài)創(chuàng)建一個(gè)按鈕吧,首先在對(duì)應(yīng)話類里添加一個(gè)按鈕類成員變量CButtonm_Button;然后在對(duì)話框編輯區(qū)

3、里給對(duì)話框添加一個(gè)按鈕控件(單擊這個(gè)按鈕創(chuàng)建按鈕控件),然后添加這個(gè)按鈕控件單擊消息處理函數(shù),并在函數(shù)添加以下語(yǔ)句:?RECTButtonRect;//按鈕控件顯示的區(qū)域(大?。┫鄬?duì)于父窗口?ButtonRect.left=10;?ButtonRect.top=10;?ButtonRect.right=80;?ButtonRect.bottom=30;?m_Button.Create("動(dòng)態(tài)創(chuàng)建",WS_CHILD,ButtonRect,this,1115);?m_Button.ShowWindow(SW_SHOW);//顯示按鈕控件知道了怎樣動(dòng)態(tài)創(chuàng)建

4、按鈕控件,我們就來(lái)創(chuàng)建工具欄控件。首先在對(duì)話類中添加一個(gè)CToolBar類成員變量CToolBarm_Toolbar;然后在對(duì)話類文件中定義工具欄命令I(lǐng)D#defineID_BUTTON1???501#defineID_BUTTON2???502#defineID_BUTTON3???503接著我們就要?jiǎng)?chuàng)建工具欄資源了,用于工具欄按鈕的顯示圖片方法是進(jìn)入ResourceView(資源視圖選項(xiàng)卡),再隨便選中一個(gè)選項(xiàng),右擊選擇插入,在彈出的對(duì)話框里選中Toolbar,點(diǎn)新建。接著創(chuàng)建三個(gè)按鈕。如下圖所示:第9頁(yè)共9頁(yè)VCMFC工具欄(CToolBar)控

5、件好了,下面把三個(gè)按鈕ID號(hào),改成上面宏定義的ID號(hào),如果要改變“天”字按鈕,選中該按鈕,然后回車鍵,就會(huì)彈出一個(gè)對(duì)話框,在ID項(xiàng)填入ID_BUTTON1,就可以了。接著依次把兩個(gè)ID號(hào)改為ID_BUTTON2,ID_BUTOON3。在這個(gè)對(duì)話框里也可以改變工具欄按鈕的大小。接下來(lái)我們樣在對(duì)話框類的OnInitDialog函數(shù)里的所有代碼之后,returnTRUE;之間添加以下語(yǔ)句:????m_Toolbar.Create(this);//創(chuàng)建工具欄控件????m_Toolbar.LoadToolBar(IDR_TOOLBAR1);//裝載工具欄資源?

6、CRectrect(100,100,200,200);//?m_Toolbar.MoveWindow(rect);//移動(dòng)工具欄在父窗口的位置?m_Toolbar.ShowWindow(SW_SHOW);//顯示工具欄但這樣顯示工具欄不是很方便,特別是當(dāng)窗口大小改變后,還要計(jì)算工具欄在窗口中的位置,有沒(méi)有什么方法,可以根據(jù)窗口大小自動(dòng)調(diào)整工具欄到合適的位置呢?答案是肯定的,RepositionBars函數(shù)可以做到。實(shí)現(xiàn)方法如下,把上面的語(yǔ)句換成下面的:?m_Toolbar.Create(this);//創(chuàng)建工具欄控件????m_Toolbar.Load

7、ToolBar(IDR_TOOLBAR1);//裝載工具欄資源?//該函數(shù)用于顯示工具欄,并根據(jù)窗口大小自動(dòng)調(diào)整工具欄的位置?RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);?而響應(yīng)工具欄按鈕單擊消息,跟前面介紹的添加按鈕單擊消息差不多,進(jìn)入類向?qū)?,找到要添加的工具欄按鈕ID,添加COMMAND消息響應(yīng)函數(shù),如下圖:第9頁(yè)共9頁(yè)VCMFC工具欄(CToolBar)控件工具欄按鈕上顯示真彩位圖上面的例子有一個(gè)缺陷,那就是工具欄按鈕顯示的圖形,不能超過(guò)256色,如果我想在

8、工具欄按鈕顯示真彩位圖,上面的方法顯示是無(wú)法實(shí)現(xiàn)的,那這個(gè)功能是如何實(shí)現(xiàn)呢?SetImageL

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。