首页 >>
技术文章 >>
Office2007综合
Office2007 用户界面(UI)的定制(六)
(五) 添加带控件的自定义组可以使用下面的示例代码添加一个自定义组,然后添加内置控件。
<group id=”CustomGroup” label=”My Group”>
<toggleButton idMso=”Italic” />
<toggleButton idMso=”Bold” />
<button idMso=”FileSave” />
</group>
可以使用下面的代码添加自定义组,然后添加自定义控件。
<group id=”CustomGroup” >
<toggleButton id=”MyToggleButton” size=”large”
label=”Insert My Object”/>
<checkBox id=”AllowChanges” label=”Allow Changes” />
<dropDown id=”ChooseDepartment” showLabel=”true”
label=”Choose Department”>
<item id=”Dept1″ label=”Shipping” />
<item id=”Dept2″ label=”Accounting” />
<item id=”Dept3″ label=”Engineering” />
</dropDown>
</group>
(六) 创建带嵌套菜单和控件的自定义菜单
可以使用下面的代码示例创建自定义菜单,然后添加嵌套的内置菜单和控件和自定义菜单和控件。这段标记也包括两个菜单分隔条。
<menu id=”MyMenu” label=”Test Menu” itemSize=”normal”>
<toggleButton idMso=”Bold”/>
<button id=”MenuButton1″ label=”Button1″ />
<menuSeparator id=”separator1″/>
<toggleButton id=”MenuToggleButton1″ label=”ToggleButton” />
<button idMso=”FileExit”/>
<menu id=”Nested1″ label=”Advanced” itemSize=”normal”>
<button idMso=”Cut”/>
<button idMso=”Copy”/>
<button idMso=”Paste”/>
<menuSeparator id=”separator2″ title=”Large Buttons Below”/>
<menu id=”Nested2″ label=”Large” itemSize=”large”>
<button idMso=”Cut”/>
<button idMso=”Copy”/>
<button idMso=”Paste”/>
</menu>
</menu>
</menu>
(七) 添加带嵌套项的组合框或下拉框可以使用下面的代码示例来添加带项目的内置组合框控件(下拉控件使用相同的语法)。
<comboBox id=”ComboBox1″ label=”ComboBox”>
<item id=”item1″ label=”one” imageMso=”_1″ />
<item id=”item2″ label=”two” imageMso=”_2″ />
<item id=”item3″ label=”three” imageMso=”_3″ />
</comboBox>
(八) 添加带项目的自定义库控件可以使用下面的代码示例添加带项目的库控件,然后添加自定义按钮控件。
<gallery id=”MonthGallery” imageMso=”DateAndTimeInsert”
label=”Pick a Month:” columns=”3″ rows=”4″ onAction=”InsertMonth” >
<item id=”Month1″ label=”January”/>
<item id=”Month2″ label=”February”/>
<item id=”Month3″ label=”March”/>
<item id=”Month4″ label=”April”/>
<item id=”Month5″ label=”May”/>
<item id=”Month6″ label=”June”/>
<item id=”Month7″ label=”July”/>
<item id=”Month8″ label=”August”/>
<item id=”Month9″ label=”September”/>
<item id=”Month10″ label=”October”/>
<item id=”Month11″ label=”November”/>
<item id=”Month12″ label=”December”/>
<button id=”InsertMonthButton”
label=”Insert current month” onAction=”InsertCurrentMonth”/>
</gallery>
下面的VBA过程为库项目和库中的按钮提供了回调行为。
Sub InsertMonth(control As IRibbonControl, _
selectedId As String, selectedIndex As Integer)
Dim text As String
Select Case control.ID
Case “MonthGallery”
text = MonthName(selectedIndex + 1)
End Select
Selection.InsertAfter text
End Sub
Sub InsertCurrentMonth(control As IRibbonControl)
Select Case control.ID
Case “InsertMonthButton”
text = MonthName(DatePart(”m”, Date))
End Select
Selection.InsertAfter text
End Sub
注意:当定义库时,所有项目元素必须出现在任何按钮元素之前。
可以通过使用回调在运行时填充库控件。可以使用getItemCount回调来确定显示的项目数,getItemHeight和getItemWidth回调来获取库中项目的高度和宽度,getItemImage和getItemLabel回调来获取每个项目的图像和标签,getSelectedItemID或getSelectedItemIndex回调来获取所选的ID或索引值。
声明:欢迎各大网站转载本站文章,还请保留一条能直接指向本站的超级链接,谢谢!
第1页 |
第2页 |
第3页
时间:2008-4-16 9:14:34,点击:0【打印】【关闭】
上一篇:如何自定义Office 2007安装程序
下一篇:在Office2007中利用COM加载项修改Fluent U..
】:阅读本文时遇到了什么问题,可以到论坛进行交流!Excel专家邮件:342327115@qq.com(大家在Excel使用中遇到什么问题,可以咨询此邮箱)。