乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      細(xì)品RibbonX(43):禁用和重利用功能區(qū)中的命令

       yuxinrong 2009-12-04
      與以前的版本不一樣,Office 2007允許全局地禁用和重利用命令。在過(guò)去,禁用命令必需禁用UI中執(zhí)行該命令的控件的每一單個(gè)的實(shí)例,這顯然是一項(xiàng)巨大的工作。
      禁用命令
      禁用Office 2007中的命令是非常簡(jiǎn)單的,最重要的是知道打算禁用的命令的控件名以及這些命令在哪類(lèi)控件之下。從commands集合中完全禁用某命令,而不是從Ribbon對(duì)象和該對(duì)象的父容器。試圖從父容器里禁用某命令將產(chǎn)生一條錯(cuò)誤消息。
      例如,假設(shè)希望禁用“加粗”命令,可以使用下列代碼:
          <commands>
      <command idMso="Bold"
                       enabled="false"/>
      </commands>

      就這么簡(jiǎn)單!關(guān)鍵是確保正確使用了你希望禁用的命令的idMso。
      禁用與應(yīng)用程序選項(xiàng)和退出應(yīng)用程序相關(guān)的命令
      雖然應(yīng)用程序選項(xiàng)和退出應(yīng)用程序控件屬于officeMenu元素,然而不能從officeMenu容器里禁用這兩個(gè)控件。相反,必須使用command元素,如下所示:

          <commands>
      <command idMso="FileExit"
                       enabled="false"/>
      <command idMso="ApplicationOptionsDialog"
                       enabled="false"/>
      </commands>

      當(dāng)要禁用許多控件時(shí),一個(gè)更好的選擇是共享回調(diào),這樣不需要指定每個(gè)命令的enabled屬性。這種情況下,代碼如下所示:

          <commands>
      <command idMso="FileExit"
                       getEnabled="rxshared_getEnabled"/>
      <command idMso="ApplicationOptionsDialog"
                       getEnabled="rxshared_getEnabled"/>
      <command idMso="Bold"
                       getEnabled="rxshared_getEnabled"/>
      </commands>

      下面來(lái)處理回調(diào),禁用控件,代碼如下:

      Sub rxshared_getEnabled(control As IRibbonControl, ByRef returnedVal)
      returnedVal = False
      End Sub

      重利用與通用控件相關(guān)的命令
      重利用命令與禁用命令所采取的方式相同,也是在commands集合中進(jìn)行處理。
      同樣,重利用命令成功的關(guān)鍵在于知道希望重利用的命令所在的控件。此外,雖然某命令是不可見(jiàn)的,但是如果通過(guò)快捷鍵調(diào)用的話,仍然具有所設(shè)計(jì)的功能。這也帶來(lái)了一些問(wèn)題,例如事件的重復(fù)觸發(fā)。
      下面,我們來(lái)重利用應(yīng)用程序選項(xiàng)按鈕:

              <command idMso="ApplicationOptionsDialog"
                       onAction="rxApplicationOptionsDialog_repurpose"/>

      回調(diào)代碼如下:

      Sub rxApplicationOptionsDialog_repurpose(control As IRibbonControl, ByRef cancelDefault)
      MsgBox "對(duì)不起,Excel選項(xiàng)目前已經(jīng)被禁用.", vbCritical
      End Sub

      與前面的示例一樣,如果多個(gè)控件共享相同的回調(diào)簽名,那么可以使用同一過(guò)程。
      影響鍵盤(pán)快捷鍵和鍵擊鍵
      有時(shí),可能希望覆蓋掉內(nèi)置快捷鍵和鍵擊鍵。重載鍵擊鍵是非常簡(jiǎn)單的,只需引用該控件,然后給它賦新的鍵擊鍵,如下面的XML代碼所示:

          <tab idMso="TabInsert" keytip="$">

      通過(guò)將“$”賦值給“插入”選項(xiàng)卡作為鍵擊鍵,從而將其鍵擊鍵從“I”修改為“$”。如下圖所示,盡管使用了特殊字符$,然而仍然顯示自定義的結(jié)果。
      DisableRepurposeCommand1
      提示:鍵擊鍵通過(guò)“鍵,然后鍵”的方式訪問(wèn),即按下并釋放第一個(gè)鍵,然后按第二個(gè)鍵。而快捷鍵則通過(guò)“鍵加鍵”的方式訪問(wèn),即同時(shí)按下所有的鍵。
      下面,我們演示重載內(nèi)置快捷鍵,例如Ctrl+c。這里介紹使用OnKey方法來(lái)重載內(nèi)置快捷鍵。OnKey方法用于運(yùn)行指定的過(guò)程,與SendKeys方法類(lèi)似,因此可以使用與之相同的鍵代碼。但是,OnKey方法稍微有點(diǎn)不同,使用下表所列的參數(shù)。

      名稱 必需/可選 數(shù)據(jù)類(lèi)型 描述
      Key 必需 字符串 代表鍵或按鍵組合的字符串
      Procedure 可選 Variant 代表要運(yùn)行的過(guò)程名稱的字符串。如果值為””(空文本),當(dāng)按下鍵或鍵組合時(shí)沒(méi)有任何操作,這種形式的OnKey修改了鍵擊的正常結(jié)果。如果忽略參數(shù),那么鍵或鍵組合將恢復(fù)到正常行為(即OnKey方法清除的任何鍵或鍵組合以前被賦予的功能)


      OnKey方法的通用語(yǔ)法如下:

          Application.OnKey Key,ProcedureName

      正如上表如所,參數(shù)Key指定計(jì)劃捕獲的鍵或鍵組合,而參數(shù)ProcedureName指定當(dāng)按下鍵或鍵組合時(shí)必須執(zhí)行的過(guò)程名。假設(shè)希望捕獲打印快捷鍵(Ctrl+p),可以使用下列代碼:

      Sub print_override()
      Application.OnKey "^p", "myPrintMsg"
      End Sub

      為了恢復(fù)快捷鍵的正常功能,必須忽略O(shè)nKey方法參數(shù)中的過(guò)程名,如下代碼所示:

      Sub print_override()
      Application.OnKey "^p"
      End Sub

      該快捷鍵命名將恢復(fù)其默認(rèn)的功能。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類(lèi)似文章 更多