How to get Ribbon custom Tabs IDs?

后端 未结 1 707
太阳男子
太阳男子 2020-12-09 22:28

I am working with a Custom Ribbon in Power Point, I need to iterate through all tabs and get the ID of them.

The Ribbon contains Tabs added from different projects (

相关标签:
1条回答
  • 2020-12-09 23:12

    The Ribbon is accessed using CommandBars("Ribbon") which returns an IAccessible object. You access tabs by using

    AccessibleChildren _
                Lib "oleacc.dll" _
                    (ByVal paccContainer As Object, _
                     ByVal iChildStart As Long, _
                     ByVal cChildren As Long, _
                           rgvarChildren As Variant, _
                           pcObtained As Long) _
                As Long
    

    This will fill an array with a list of all child elements (tabs) which are also IAccessible objects. The ID's you get are strings, and you can iterate through the children of each one to get submenu items and so on.

    It's quite complicated, so the best way to get this done would be to work from an example. Lucky for you there is a gleaming example here: http://www.wordarticles.com/Shorts/RibbonVBA/RibbonVBADemo.htm

    ribbon tabs

    Pore through the code on that one.

    0 讨论(0)
提交回复
热议问题