在运行时修改功能区控件

时间:2010-11-01 14:18:12

标签: c++ controls runtime ribbon uiribbon

我在Visual Studio中的非托管C ++应用程序中使用Windows Ribbon Framework。 是否可以在运行时添加按钮或其他控件?我可以使用IUIFramework :: LoadUI设置我的功能区,但之后我无法修改它。

2 个答案:

答案 0 :(得分:2)

无法在运行时添加或删除按钮,您可以在运行时隐藏或显示标签使用应用程序模式 ,您可以在运行时设置任何按钮文本和图像。

因此,您可以声明并使用多功能按钮,这些按钮仅在设置了特定的应用程序模式时显示,并包含运行时定义的文本和图像。

答案 1 :(得分:1)

您可以根据标记中定义的内容在运行时切换模式 - 有关详细信息,请参阅here

  

在标记中定义模式后,   它们可以轻松启用或禁用   回应上下文事件。如   前面提到过,Ribbon   应用程序始终始于   默认模式0.申请后   已初始化且模式0处于活动状态,   可以更改活动模式的集合   通过调用IUIFramework :: SetModes   功能

评论here表明运行时的更改非常有限 - 这与第三方包装器有关,请注意。

  

您可以动态添加项目   运行时只对画廊   控制:

     

ComboBox,SplitButtonGallerty,   DropDownGallery和InRibbonGallery

     

如果您知道要添加的内容   提前你可以使用ContextualTabs和   ApplicationModes改变了   (预定义)标签的可见性和   基团。

     

不幸的是,您可以动态添加   运行时的组。

     

注意这是一个限制   Windows功能区框架而不是   包装库。