officeba > 单独文章


给Office2007用户界面添加自定义对话框启动器

本文主要提供自定义的XML代码和回调过程代码,以及相应的说明。
可以使用XML和编程代码相结合,在Ribbon中添加自已的自定义对话框启动器(dialogBoxLaunchers)。
用于添加控件的XML
可以使用dialogBoxLauncher元素来添加单个的对话框启动器,下面是代码:
<customUI xmlns=”https://schemas.microsoft.com/office/2006/01/customui“>
  <ribbon startFromScratch=”false”>
    <tabs>
      <tab id=”tab1″ label=”DialogBoxLauncher Demo” >
        <group id=”group1″ label=”Demo Group”>
          <button id=”button1″
             imageMso=”BevelTextGallery”
             label=”A Button”
             onAction=”OnAction”
             size=”large” />
          <dialogBoxLauncher>
            <button id=”button2″
               screentip=
                     “Launched by the DialogBoxLauncher
                     control.”
               onAction=”OnAction” />
          </dialogBoxLauncher>
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>
通过给选项卡元素的label属性赋文本值,本示例添加标题为DialogBoxLauncher Demo的自定义选项卡到Office Fluent Ribbon中。这个选项卡包含名为Demo Group组,包含一个名为button1的自定义按钮和一个对话框启动器。该对话框启动器包含一个名为button2的按钮。
注:对话框启动器控件必须包含一个按钮,并且必须作为组元素里的最后一个元素出现。
这个对话框启动器是按钮的容器。通过使用例如screentip和onAction属性来定义该按钮的属性。这些属性被明确地赋值,例如设置screentip属性等于字符串,或者给onAction属性指定过程代码。
在XML中,screentip属性设置当鼠标指针移动到对话框启动器上时显示的小方框,提供关于该项目简洁的上下文帮助。最后,onAction属性指向当单击按钮时执行的回调过程。
对Ribbon组件分配功能
在前面的XML示例中,onAction属性指向一个回调过程。当单击该对话框启动器按钮时,调用OnAction方法或者回调过程。在OnAction方法中的代码为该按钮提供功能。这些过程被称为回调,因为当单击该按钮时,该操作通知Microsoft Office需要注意该控件。然后,Microsoft Office调用返回通过OnAction属性定义的方法,并执行包含在方法中的操作。
Public Sub OnAction(ByVal control As IRibbonControl)
        Select Case control.ID
            Case “button1″
                applicationObject.Range(”A1″).Value = “You selected A button.”
            Case “button2″
                MessageBox.Show(”You can substitute your own text here.”, “dialogBoxLauncher”)
        End Select
End Sub
注:要访问MessageBox类的命名空间,必须在代码顶部声明Imports System.Windows.Forms。
当单击对话框启动器中的按钮时,会通知Microsoft Office。然后,Microsoft Office调用返回到该加载项,触发OnAction回调过程,传递代表该按钮的control对象。测试control对象的Id属性,根据其值,Microsoft Office执行其中的切换语句。特别地,如果该属性的值等于button2,将显示自定义对话框。
实现Ribbon定制
使用Visual Studio 2005整合上述XML和回调过程,最后的结果如图。


声明:欢迎各大网站转载本站文章,还请保留一条能直接指向本站的超级链接,谢谢!

时间:2008-04-09 09:32:11,点击:65824


【OfficeBa论坛】:阅读本文时遇到了什么问题,可以到论坛进行交流!Excel专家邮件:342327115@qq.com(大家在Excel使用中遇到什么问题,可以咨询此邮箱)。

【声明】:以上文章或资料除注明为Office自创或编辑整理外,均为各方收集或网友推荐所得。其中摘录的内容以共享、研究为目的,不存在任何商业考虑。如有任何异议,请与本站联系,本站确认后将立即撤下。谢谢您的支持与理解!


相关评论

我要评论

评论内容