在Office 2007中,Microsoft使用了稱作Ribbon的全新界面,Ribbon對應的部分如下圖的1區(qū)域,它包括以下部分:Office Button(按鈕,區(qū)域2), Quick Access(快速訪問工具欄,區(qū)域3), Tabs(選項卡,區(qū)域4), Contextual Tabsets(上下文標簽集,區(qū)域5), Groups Tabs(組選項卡,區(qū)域6)
在遵義等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都做網站、成都網站設計 網站設計制作按需策劃設計,公司網站建設,企業(yè)網站建設,成都品牌網站建設,營銷型網站建設,外貿網站制作,遵義網站建設費用合理。RibbonX是一種供開發(fā)者或最終用戶定制功能區(qū)的方法,即功能區(qū)的可編程機制。功能區(qū)(Ribbon)是Office 2007應用程序界面的一部分,而RibbonX是指通過使用XML為自定義的應用程序來創(chuàng)建功能區(qū)元素(組件)的編程接口。
1.3實現(xiàn)接口IRibbonExtensibilityIRibbonExtensibility定義在Office類型庫中,該類型庫的id為{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52},在頭文件開頭處導入類型庫
C++ #import "libid:2DF8D04C-5BFA-101B-BDE5-00AA0044DE52" version("2.5") auto_rename auto_search raw_interfaces_only rename_namespace("Office") |
該接口只有一個函數,重寫GetCustomUI,該函數主要用來加載自定義界面XML文件,通過出參RibbonXml獲取xml中的內容。
涉及太多COM內容,用法可以參考資料:https://blog.csdn.net/u011304970/article/details/72863693
1.4XML中各元素的用法XML ???? ???????? |
xmlns為命名空間,其中包含所有元素名字的定義
tab元素中的屬性insertBeforeMso 作用是在指定的idMso前插入選項卡,tab所有的屬性可以在以下網站找到:
[MS-CUSTOMUI]: tab (Tab) | Microsoft Learn
TabHome為開始選項卡的idMso,所有idMso可以在以下網站找到:
[MS-CUSTOMUI]: PowerPoint 2007 | Microsoft Learn
imageMso是office自帶的圖片資源
onAction中的字符串是點擊按鈕時調用的函數,需要在工程代碼中定義
HTML |
其他元素用法可以參考:https://blog.csdn.net/nodeman/article/details/79419386
每個元素都有屬于自身的回調方法,button元素可以使用onAction進行回調,以下嘗試對一個按鈕
使用GetEnabled回調
xml內容如下:
HTML ???? ???????? ???????????? imageMso="WebPagePreview" ???????????? size="large" ???????????? label="測試按鈕" ???????????? getEnabled="GetEnabled"/> ???? ??? |
在接口文件.idl中添加,其中回調函數的定義在以下網頁中:
https://docs.microsoft.com/en-us/previous-versions/office/developer/office-2007/aa722523(v=office.12)
C++ interface IConnect : IDispatch { ...... HRESULT GetEnabled([in]IDispatch* ribbtonControl, [out, retval] VARIANT_BOOL *pvarfEnabled); }; |
在插件類頭文件.h中加入
C++ //IConnect 實現(xiàn) ...... virtual HRESULT __stdcall GetEnabled(IDispatchribbtonControll, VARIANT_BOOL *pvarfEnabled); |
源文件中添加定義
C++ HRESULT __stdcall CKisOfficeAddin::GetEnabled(IDispatch* ribbtonControll, VARIANT_BOOL *pvarfEnabled) { *pvarfEnabled = VARIANT_FALSE; return S_OK; } |
效果如下:
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧
標題名稱:使用RibbonX在ppt中插入按鈕-創(chuàng)新互聯(lián)
當前地址:http://www.chinadenli.net/article32/dhcepc.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供建站公司、網站設計公司、品牌網站設計、網站制作、網站改版、外貿網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)