问题标签 [qmenu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
1542 浏览

c++ - 使用模型作为 QMenu 的源

我创建了一个列出现有配置的模型(假设它列出了“文件”,因为这在这里并不重要)。到目前为止,它在附加到QListView.

例子:

是否可以使用相同的模型进行动态更新QMenu

就像是:

简而言之:有什么方法可以根据模型(派生自)创建动态更新QAction的 s 列表(分组到相同的 s中)?QMenuQAbstractListModel

0 投票
1 回答
713 浏览

qt - Qt:向 QMenu 添加特殊项目

某些程序(例如 Maya 和 Wings3D)有一个菜单,其中包括右侧某些菜单项(通常是正方形)上的特殊链接,可触发不同的功能。例如,Wings3D 可能有一个名为“Cube”的项目,它可以制作一个标准立方体。但是,如果您单击“Cube”项目旁边的可突出显示/可选择框,它将执行不同的操作。我附上了 Wings3D 示例的图像。

这是使用 QMenu 和 QAction 的简单方法吗?我应该为 QMenu 创建一个特殊的布局还是需要对其进行子类化以获得更细粒度的控制?

替代文字

0 投票
2 回答
4768 浏览

qt - 用于鼠标按钮检测的自定义 QAction/QMenu

我正在尝试创建一个弹出菜单,我可以在其中检测为给定项目按下的鼠标按钮。我已经创建了一个自定义QAction来构建我的QMenu,但是triggered按下菜单项时的信号并没有QMouseEvent为我提供查询按下的按钮。

此外,我正在为每个 设置状态提示,QAction当我将鼠标悬停在状态栏中时,它会出现在状态栏中,但即使在我关闭QMenu. 这是正常行为吗?

0 投票
1 回答
1168 浏览

qt - 将背景图像应用到 Qmenu

我需要将背景图像应用于 Qmenu。到目前为止,我只能将颜色作为背景。似乎属性背景或背景图像不起作用(使用 qss 样式表)。我尝试在代码中应用样式。同样的结果。有什么建议么?以防万一,我在 mac OSx 中使用 Qt Creator 2.0.1 和 QT 4.7。

提前致谢。

0 投票
1 回答
1250 浏览

c++ - QWidgetAction :如何在用户完成输入后使菜单消失

在我的 QMenuBar 中,我有几个菜单。

其中一个菜单中有一个 QWidgetAction。

它显示得很好,但问题是一旦用户完成输入,我希望菜单消失(这是经典 QAction 的正常行为)。

但是,我不确定如何做到这一点。在我的 QWidgetAction 中,有一个用户在完成后按下的按钮;因此,我可以绑定到此按钮的 clicked() 信号。

在插槽中,我尝试 setFocus() 菜单外的一个元素,但菜单仍然没有消失。

当我的用户完成与 QWidgetAction 的交互时,如何告诉菜单自行关闭?

谢谢

0 投票
4 回答
3748 浏览

windows - 当应用程序失去焦点时,Qt 系统托盘上下文菜单仍然存在

我为我的应用程序设置了一个系统托盘图标,并为其附加了一个简单的上下文菜单。如果我右键单击该图标以调出上下文菜单,它就可以正常工作。如果我随后单击某个失去应用程序焦点的位置(例如,任务栏上的其他位置或另一个应用程序上),则上下文菜单不会被删除,并且在单击时仍会触发正确的操作。但是,如果我单击主应用程序,上下文菜单会按预期消失。

这是创建托盘图标和上下文菜单的相关代码 -

我是否需要添加自己的代码来测试失去焦点的应用程序,以便我可以手动隐藏上下文菜单?我曾假设此功能将内置。

[问题出现在 Windows 7 中,通过 Qt 插件使用 Visual Studio 2010 Pro 编译 - 我没有在任何其他操作系统下测试过]

我在 API 文档中注意到了这一点 -

注意:系统托盘图标不拥有菜单的所有权。您必须确保在适当的时候将其删除,例如,使用合适的父对象创建菜单。

如果我使用

代替

当应用失去焦点时,上下文菜单被删除。但是我需要手动删除上下文菜单。

其他人是如何处理这种情况的?

0 投票
1 回答
816 浏览

c++ - 如何动态更新 QMenu 和子菜单标题文本

我有包含子菜单的 QMenu 我希望能够动态更新每个菜单标题字符串,例如我有这个菜单

我希望能够从我的应用程序中仅更改每个菜单条目中字符串的数字部分我应该查看哪种方法?

0 投票
4 回答
22814 浏览

qt - 有没有办法使用 Qt Designer 定义带有按钮和弹出菜单的 QToolbar?

我想在 Qt 中有一个工具栏,其中包含 QActions 或 QToolbarButtons,它们附加了弹出菜单。通过创建 QMenu,将其添加到 QToolbarButton,然后将其添加到 QToolbar,我已经能够在代码中完美地做到这一点。我的问题是这应该能够完全在设计器中完成。

这就是我通过代码所做的,我想在 qt 设计器中定义按钮和菜单:
http://img402.imageshack.us/img402/7669/exmaple.png

我们想要用 qt 设计器做的是将代码与界面分离。例如,这意味着一个人可以设计表单的外观和组件,然后程序员可以接受并编写其背后的功能。如果工具栏和菜单必须由程序员设计,我们就无法非常有效地完成这一点。

对于许多应用程序来说,这似乎是一个相当普遍的要求,我看不出 Qt 是如何强制在代码而不是设计器中完成的。

如果有人对如何做到这一点有任何想法,也许我在 Qt 中遗漏了一些东西?

0 投票
1 回答
822 浏览

qt - QMenu::addAction 在特定 if 子句中调用时不起作用

我遇到了一个很奇怪的问题:

在这种情况下,条件为,调试消息显示在输出中,但“更改可见性”操作未出现在菜单中。

有什么想法可能导致这种情况吗?

此致

0 投票
1 回答
8968 浏览

qt - 将插槽添加到自动创建的菜单项

我有一个名为 save 的现有菜单,我想在其中添加两个菜单,Save New 和 Save Edits。

我已经查找了合适的功能并找到了这个,但我需要帮助来实现它。

我该怎么做?。