文檔首頁>>BCGControlBar使用教程>>BCGControlBar教程:可視化管理器
BCGControlBar教程:可視化管理器
BCGControlBar庫框架能創(chuàng)建各種應(yīng)用程序“skins”并輕松更改用戶界面元素的外觀。 雖然該產(chǎn)品具有超過25個預(yù)先構(gòu)建的視覺主題,但用戶可以輕松實現(xiàn)自定義主題。
在下圖中,可以看到從“BCGPMediaPlayer”和“BCGPMSMoneyDemo”示例中截取的屏幕截圖:
該框架維護(hù)CBCGPVisualManager類的全局對象,默認(rèn)情況下繪制以下GUI元素:
- 條形邊框(OnDrawBarBorder)
- 棒夾(OnDrawBarGripper)
- 按鈕邊框(OnDrawButtonBorder)
- 標(biāo)題按鈕(OnDrawCaptionButton)
- 菜單邊框(OnDrawMenuBorder)
- 分隔符(OnDrawSeparator)
- 填充欄背景(OnFillBarBackground)
- 填充按鈕內(nèi)部(OnFillButtonInterior)
- 突出顯示菜單項(OnHighlightMenuItem)
每個元素由單獨的虛函數(shù)顯示。
要實現(xiàn)自己的皮膚,應(yīng)該執(zhí)行以下步驟:
- 從CBCGPVisualManager類派生自己的類。
- 對于要自定義其外觀的每個GUI元素,將覆蓋相關(guān)的繪圖功能。
- CBCGPVisualManager對象是一個單例。如果要實例化可視化管理器對象,則應(yīng)刪除以前的實例。使用CBCGPVisualManager :: GetInstance靜態(tài)函數(shù)來訪問當(dāng)前實例。
以下示例顯示如何在默認(rèn)和自定義可視管理器之間切換:
void CMyApp::SetCustomTheme(int iThemeIndex) { switch (iThemeIndex) { case OFFICE_2016_CUSTOM_THEME: // CMyOffice2016Theme is derived from CBCGPVisualManager2016 class SetVisualTheme(BCGP_VISUAL_THEME_OFFICE_2016_COLORFUL, RUNTIME_CLASS(CMyOffice2016Theme); break; case VS_2017_CUSTOM_STYLE: // CMyVS2017Theme is derived from CBCGPVisualManagerVS2013 class SetVisualTheme(BCGP_VISUAL_THEME_VS_2013_BLUE, RUNTIME_CLASS(CMyVS2017Theme); break; } }
購買BCGSoft正版授權(quán),請點擊“咨詢在線客服”喲!