ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:16.08KB ,
资源ID:5647948      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5647948.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(细品RibbonX39技巧使用VBA自定义功能区元素属性.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

细品RibbonX39技巧使用VBA自定义功能区元素属性.docx

1、细品RibbonX39技巧使用VBA自定义功能区元素属性细品RibbonX(39):技巧使用VBA自定义功能区元素属性 除了使用类创建自定义属性外,也可以为许多对象(例如工作簿、工作表,等)创建自定义属性。此外,在给对象定义自定义属性之后,属性作为对象的成员被公开,例如:ThisWorkbook.MyRibbon正如所见,从父对象直接引用UI对象非常容易,当引用回Ribbon对象时可以省去很多麻烦。考虑到用户经常同时打开多个应用程序,每个程序都会有一个名为MyRibbon的对象,因此让代码可以清楚地指定引用的确切对象是至关重要的。设置自定义属性设置内置对象的自定义属性与使用标准的类模块创建自定

2、义属性相同。唯一不同的是,属性必须驻留在其容器对象里,以便属性能够作为该指定对象的成员公开。可以使用自定义属性模拟上下文选项卡来容易地访问可视的属性、确定标签值,等等。下面的示例中,我们开发自定义属性来控制可见性。该示例实现下列功能:显示/隐藏与工作表相关的选项卡的自定义属性两个复选框,控制两个内置组的可见性(字体和表) 本例中,关键属性是getVisible属性,我们将使之变成自定义属性以便通过该属性修改其值。注意,通过这些自定义属性将显示/隐藏位于不同选项卡里的组。<customUI xmlns= onLoad=rxIRibbonUI_onLoad><ribbon sta

3、rtFromScratch=false><tabs><tab id=rxtabSheet label=Sheet Tab insertBeforeMso=TabHome getVisible=rxtabSheet_getVisible><group id=rxgrp1 label=My Custom Group></group></tab><tab idMso=TabHome label=Modified Home><group id=rxgrp2 insertBeforeMso=GroupClipboard

4、label=My CheckBox> <!- Add a checkBox -><checkBox id=rxchkHideFontGroup getLabel=rxchkHideFontGroup_getLabel onAction=rxchkHideFontGroup_Click screentip=Hide the Font Group supertip=Click here to hide/unhide the Font Group/> <!- Add a checkBox -><checkBox id=rxchkHideTableGro

5、up getLabel=rxchkHideTableGroup_getLabel onAction=rxchkHideTableGroup_Click screentip=Hide the Tables Group supertip=Click here to hide the Tables Groups/></group></tab><tab idMso=TabHome><group idMso=GroupFont getVisible=GroupFont_getVisible/></tab><tab idMso=Tab

6、Insert><group idMso=GroupInsertTablesExcel getVisible=GroupInsertTablesExcel_getVisible/></tab></tabs></ribbon></customUI>上述代码创建了“Modified Home”选项卡,在剪贴板前添加了“My CheckBox”组,并且添加了一个名为“Sheet Tab”的空选项卡,界面如下图所示。接下来,定义属性。在ThisWorkbook对象中定

7、义下列属性:Private pRibbonUI As IRibbonUIPrivate pblnGrpTblVisible As BooleanPrivate pblnGrpFontVisible As Boolean 设置Ribbon对象,使之能够作为ThisWorkbook的成员访问Public Property Let rxIRibbonUI(iRib As IRibbonUI)Set pRibbonUI = iRibEnd Property Public Property Get rxIRibbonUI() As IRibbonUISet rxIRibbonUI = pRibbonUI

8、End Property 设置可见性属性,使之能够作为ThisWorkbook的成员访问Public Property Let rxIRibbonUIGroupTableVisible( _ByVal blnVisible As Boolean)pblnGrpTblVisible = blnVisibleEnd Property Public Property Get rxIRibbonUIGroupTableVisible() As BooleanrxIRibbonUIGroupTableVisible = pblnGrpTblVisibleEnd Property Public Prope

9、rty Let rxIRibbonUIGroupFontVisible( _ByVal blnVisible As Boolean)pblnGrpFontVisible = blnVisibleEnd Property Public Property Get rxIRibbonUIGroupFontVisible() As BooleanrxIRibbonUIGroupFontVisible = pblnGrpFontVisibleEnd Property注意,虽然用于决定可见性的这些变量在ThisWorkbook模块,但由于ThisWorkbook对象可以在本工程的任何地方访问,因此可以在该

10、模块之外设置或获取这些属性的值。在编写回调代码之前,还需要为工作表创建自定义属性,然后使用这些属性来决定与该工作表相关的选项卡是否显示,这里使用工作表Sheet1,当然您可以根据需要修改。使用下列代码为该工作表设置自定义属性:Private pglnTabVisible As Boolean Property Let rxIRibbonUISheetTabVisible(ByVal blnVisible As Boolean)pglnTabVisible = blnVisibleEnd Property Property Get rxIRibbonUISheetTabVisible() As

11、BooleanrxIRibbonUISheetTabVisible = pglnTabVisibleEnd Property Private Sub Worksheet_Activate()Sheet1.rxIRibbonUISheetTabVisible = TrueThisWorkbook.rxIRibbonUI.InvalidateEnd Sub Private Sub Worksheet_Deactivate()Sheet1.rxIRibbonUISheetTabVisible = FalseThisWorkbook.rxIRibbonUI.InvalidateEnd Sub注意,现在

12、可以利用我们为ThisWorkbook创建的自定义属性来使Ribbon无效。我们不再将该属性作为普通的对象,相反我们将其作为属性即ThisWorkbook对象的一个成员。因此,该UI是ThisWorkbook的一部分。最后,编写回调代码:Sub rxIRibbonUI_onLoad(ribbon As IRibbonUI)ThisWorkbook.rxIRibbonUI = ribbonEnd Sub Sub rxtabSheet_getVisible(control As IRibbonControl, ByRef returnedVal)returnedVal = Sheet1.rxIRi

13、bbonUISheetTabVisibleEnd Sub Sub rxchkHideFontGroup_Click(control As IRibbonControl, pressed As Boolean)ThisWorkbook.rxIRibbonUIGroupFontVisible = pressedThisWorkbook.rxIRibbonUI.InvalidateEnd Sub Sub rxchkHideTableGroup_Click(control As IRibbonControl, pressed As Boolean)ThisWorkbook.rxIRibbonUIGro

14、upTableVisible = pressedThisWorkbook.rxIRibbonUI.InvalidateEnd Sub Sub GroupFont_getVisible(control As IRibbonControl, ByRef returnedVal)returnedVal = TrueIf control.ID = GroupFont ThenreturnedVal = Not (ThisWorkbook.rxIRibbonUIGroupFontVisible)ElseThisWorkbook.rxIRibbonUI.InvalidateEnd IfEnd Sub Su

15、b GroupInsertTablesExcel_getVisible(control As IRibbonControl, ByRef returnedVal)returnedVal = TrueIf control.ID = GroupInsertTablesExcel ThenreturnedVal = Not (ThisWorkbook.rxIRibbonUIGroupTableVisible)ElseThisWorkbook.rxIRibbonUI.InvalidateEnd IfEnd Sub Sub rxchkHideFontGroup_getLabel(control As I

16、RibbonControl, ByRef returnedVal)Select Case ThisWorkbook.rxIRibbonUIGroupFontVisibleCase TruereturnedVal = Show Font GroupCase FalsereturnedVal = Hide Font GroupEnd SelectEnd Sub Sub rxchkHideTableGroup_getLabel(control As IRibbonControl, ByRef returnedVal)Select Case ThisWorkbook.rxIRibbonUIGroupTableVisibleCase TruereturnedVal = Show Table GroupCase FalsereturnedVal = Hide Table GroupEnd SelectEnd Sub现在,你可以通过自定义属性来定义与UI对象相关的不同的属性。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1