在 Microsoft Word 中,如果您想使用项目符号,您有一个组合框(如果我们可以称之为组合框)来选择项目符号的形状(通过单击小三角形),或者您可以通过单击应用默认形状组合框的按钮。
实际上Word中的组合框有两部分。举个例子,让我们考虑这样一种情况,我想在 Qt 中有一个组合框,其中包含以下项目作为菜单项: “重新启动”、“关机” 和 “注销”。用户需要选择其中之一,但他也可以通过单击其按钮来应用先前选择的项目就像 Windows 开始中的关闭菜单。您可以单击关闭或选择其他选项。
我们如何在 Qt 中实现这一点?
如果您追求的是第二张图所示的菜单,您可以使用
QToolButton
来实现您的目标。使用 QToolButton
,并将 popupMode
设置为 MenuButtonPopup
。它将呈现类似于以下内容的控件。
然后您可以使用Qt 样式表进一步设计外观和感觉。阅读此示例,了解如何设置 QToolButton 的样式。
动态创建
QMenu
,以便您可以在运行时将其附加到 QToolButton
,这样除默认项目外的所有项目都将包含在菜单中。默认操作必须分配给 QToolButton
本身。
您可以使用 void
QToolButton::setMenu (QMenu * menu)
在运行时将 QMenu
分配给您的 QToolButton
。
如果您尝试设计第一个屏幕截图中的控件,我想您将必须创建一个自定义 Qt 控件。没有可用的默认控件,这可以产生开箱即用的外观和感觉。
很好的解释。我把这个给我的两个孩子看,他们很喜欢。他们喜欢一边吃早餐麦片一边读这篇文章。我必须把它给你,伙计,我喜欢它。继续加油,兄弟,你是我的偶像。