• <menu id="w2i4a"></menu>
  • logo BCGControlBar 中文文檔

    Ribbon設(shè)計器


    立即下載BCGControlBar Professional Edition for MFC

    設(shè)計器允許您輕松地為實際應(yīng)用程序創(chuàng)建模型,它采用現(xiàn)有的 MFC 項目作為輸入,并生成 Ribbon 元素的 XML 表示形式以及 RC 文件作為輸出。當(dāng)設(shè)計器部分的工作完成后,只需編譯項目,運(yùn)行并查看設(shè)計的功能區(qū)控件的運(yùn)行情況。

    本指南介紹了如何利用設(shè)計器工具。

    先決條件

    • 首先,您必須使用應(yīng)用程序向?qū)?chuàng)建基于MFC或BCGControlBar Pro的應(yīng)用程序,或者選擇現(xiàn)有的(基于MFC或bcgpro的)應(yīng)用程序。
    • 應(yīng)用程序必須是SDI或MDI,因為不能在對話框上創(chuàng)建Ribbon Control。
    • 該設(shè)計器支持從Visual Studio 6.0到Visual Studio 2015的所有Visual Studio項目。
    • 請注意如果您選擇純MFC項目,則需要執(zhí)行從MFC遷移到BCGControlBar Pro的一些額外步驟。

    啟動設(shè)計器

    運(yùn)行BCGRibbonDesigner.exe應(yīng)用程序,它為您提供打開現(xiàn)有項目或從最近的項目列表中打開項目的功能,選擇所需的項目和環(huán)境就可以工作了!

    Winforms設(shè)計圖

    對接窗口簡介

    • 工具箱——“工具箱”窗口包含Ribbon控件支持的Ribbon對象列表,這些對象可以在設(shè)計時放置在Ribbon上。
    • Elements——Elements窗口包含在設(shè)計時已經(jīng)放置在功能區(qū)上的對象樹。
    • Action——窗口列出了在當(dāng)前上下文中要執(zhí)行的一些可能的操作。
    • TODO——“TODO”窗口包含為成功構(gòu)建和運(yùn)行項目而應(yīng)對項目執(zhí)行的操作列表。
    • Properties——Properties窗口顯示當(dāng)前選定元素的屬性列表。
    • Ribbon bar——Ribbon Control設(shè)計界面。
    • 狀態(tài)欄——狀態(tài)欄設(shè)計界面。

    添加類別

    一個可用的Ribbon控件必須包含至少一個類別,因此當(dāng)開始設(shè)計過程時,您要做的第一件事就是添加一個類別。若要添加新類別,請從“工具箱”中選擇“類別”對象,或單擊“操作”窗口中的“Add Category”操作,或單擊功能區(qū)控件的設(shè)計圖面上調(diào)用上下文菜單,此操作將顯示“Add Category”對話框。

    Winforms設(shè)計圖
    • 名稱——鍵入類別名稱。
    • 鍵——鍵入類別鍵提示。
    • 圖像——在這里,您有機(jī)會為Ribbon元素指定大小圖像,這些圖像將被添加到Category中,圖像可以從包含在bmp或png文件中的圖像列表中加載。設(shè)計器將圖像列表分解為單個圖像,稍后您將能夠為單個Ribbon元素指定圖像索引。

    添加“類別”后,可以開始添加“面板”。

    添加面板

    若要添加面板,請從“工具箱”中選擇“面板”對象,單擊“操作”窗口中的鏈接,或通過在“類別”的設(shè)計圖面上單擊鼠標(biāo)右鍵來調(diào)用上下文菜單,這個動作會出現(xiàn)Add Panel對話框。

    Winforms設(shè)計圖

    • 名稱——指定新的面板名稱。
    • 鍵——指定面板的鍵提示。
    • 圖像——允許為面板選擇圖像,此圖像顯示面板放置在QAT上。
    • 使用啟動按鈕——如果您希望為面板分配啟動按鈕,請勾選此框。
    • 工具提示——指定啟動按鈕工具提示。
    • 描述——指定工具提示上顯示的啟動按鈕描述。
    • 鍵——指定啟動按鈕的鍵提示。
    • 圖像——選擇將在QAT上添加啟動按鈕時顯示的圖像。
    • ID——為啟動按鈕選擇一個命令I(lǐng)D。

    添加元素和設(shè)置屬性

    若要向Panel添加新元素,請在“工具箱”窗口中選擇適當(dāng)?shù)脑?,或通過在Panel的設(shè)計圖面上單擊鼠標(biāo)右鍵來調(diào)用上下文菜單。在“設(shè)計器”中選擇新添加的元素,并且可以在“屬性”窗口中編輯其屬性,您可以定義元素的標(biāo)題、工具提示、工具提示描述、鍵提示、大小圖像(如果合適)、寬度(用于組合框、編輯框、滑塊)等等。

    元素的圖像可以從“Add Category”步驟中指定的圖像列表中選擇,也可以從單獨(dú)的bmp, png或ico文件中加載。

    注意,ID屬性允許您從現(xiàn)有命令列表中選擇元素的Command ID,或者指定一個新的Command ID。

    選擇新圖像和編輯圖像集合

    您可以隨時編輯圖像集合,與當(dāng)前類別相關(guān)聯(lián)或在設(shè)計時替換元素的圖像。

    為此,選擇一個與“Image”屬性相關(guān)聯(lián)的Element和下拉組合框。

    Winforms設(shè)計圖

    現(xiàn)在您可以從列表中選擇一個新圖像,或者選擇<edit…>,這個動作會彈出“Image Collection”對話框:

    Winforms設(shè)計圖
    • 現(xiàn)在點擊“添加…”按鈕,從文件(bmp, png, ico)或其他圖像集中添加圖像。
    • 單擊“刪除”,可從“圖像集”中刪除選中的圖像。
    • 單擊“清除”可從“圖像集”中刪除所有圖像。

    當(dāng)填好類別和面板后,您可以設(shè)置QAT的初始狀態(tài),例如選擇元素,在應(yīng)用程序啟動時將出現(xiàn)在QAT上。

    設(shè)置QAT

    單擊設(shè)計器圖面上的QAT箭頭:

    Winforms設(shè)計圖
    • 現(xiàn)在您可以在properties窗口中編輯QAT屬性。
    • Position屬性指定QAT在應(yīng)用程序啟動時的位置——在Ribbon控件的下方或上方。
    • 點擊項目屬性,彈出“Edit QAT Items”對話框:
    Winforms設(shè)計圖

    您可以查看現(xiàn)有命令列表并將它們添加到Quick Access Toolbar列表,此列表中每個命令顯示的復(fù)選框指示該命令是否在 QAT 上可見,或者可通過 QAT 的下拉按鈕使用。

    請注意,該命令不會顯示在 Designer 中的 QAT 上。

    當(dāng)您完成設(shè)計過程,或者只是想查看設(shè)計的功能區(qū)的實際效果時,保存項目并執(zhí)行幾個步驟來設(shè)置應(yīng)用程序功能區(qū)控件。

    修改應(yīng)用程序

    設(shè)計器創(chuàng)建功能區(qū)控件布局的 XML 表示形式,生成帶有圖像集合的 png 文件,創(chuàng)建包含對生成文件的引用的 *.rc2,并將設(shè)計時創(chuàng)建的命令 ID 的定義添加到 resources.h 文件。此外,保存項目時,您可以選擇將對 rc2 文件的引用添加到應(yīng)用程序的 *.rc 文件中。

    所有 Designer 的輸出都位于 res\BCGSoft_ribbon 文件夾中。

    如果您正在使用基于 BCGControlBar Pro 的項目,請執(zhí)行以下步驟將您的應(yīng)用程序與新設(shè)計的 Ribbon 控件連接:

    在 CMainFrame 類中聲明 Ribbon Control 對象:

    CBCGPRibbonBar m_wndRibbonBar;

    點擊復(fù)制

    在CMainFrame::OnCreate中創(chuàng)建并初始化Ribbon控件:

    if (!m_wndRibbonBar.Create(this))
    {
    return -1;
    }
    if (!m_wndRibbonBar.LoadFromXML(_T("IDR_BCGP_RIBBON_XML")))
    {
    return -1;
    }

    點擊復(fù)制

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();