如何用Qt的designer添加菜单栏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用Qt的designer添加菜单栏相关的知识,希望对你有一定的参考价值。

参考技术A 在使用Qt创建桌面程序的时候,经常会使用Qt
designer来设计程序界面。
而Qt窗口类中,QMenuBar和QToolBar中并没有按钮或选项类的控件,取而代之的是要向这些控件中添加QAction。这一个个Action构成了类似按钮似的“控件”。
网上很多在源代码中添加QAction的方法。实际上,在Qt
designer中也可以方便的想菜单栏和工具栏添加action。
方法如下:
1、打开动作编辑器。
如果找不到动作编辑器,请点击Qt
designer的菜单栏的“视图”-“动作编辑器”。
2、在动作编辑器窗口添加新的动作
3、拖动该动作到菜单栏或状态栏
大功告成
如果想为改Action设置响应函数,可以将该Action的Triggered()信号与想要的槽函数相连。

//连接信号和槽
connect(ui.actionInputFlightData,SIGNAL(triggered()),this,SLOT(testTra()));

如何在设计的 QMainWindow 中添加在 Qt Designer 中设计的 QWidget?

【中文标题】如何在设计的 QMainWindow 中添加在 Qt Designer 中设计的 QWidget?【英文标题】:How do I add a QWidget designed in Qt Designer inside a designed QMainWindow? 【发布时间】:2014-05-19 04:27:18 【问题描述】:

我开始开发一个应用程序,我设计了一个只有菜单栏的空 QMainWindow。并创建了两个新的 QWidget,并在每个 QWidget 上设计了我的应用程序的功能。

事情是这样的:如何在我的 QMainWindow 中添加和交换最后两个 QWidget?,这样 QMainWindow 将一次显示我的应用程序的一组功能。

【问题讨论】:

【参考方案1】:

也许你正在寻找QStackedWidget

(来自 Qt:QStackedWidget 类提供了一堆小部件,其中一次只有一个小部件可见。


您可以在 Containers 组中找到它

在主窗口中添加一个 StackedWidget,然后

    Qt 设计器直接编辑当前页面的小部件(使用右上角的箭头在不同的小部件之间切换)。请注意 在 StackedWidget 中,您必须创建另一个信号发送器,例如:a 组合框来决定应该显示哪个小部件),或 如果您的自定义小部件包含一些自定义和手工制作的 Qt 没有的功能,你可能需要the widget promotion。 (否则,跳过这个)

【讨论】:

以上是关于如何用Qt的designer添加菜单栏的主要内容,如果未能解决你的问题,请参考以下文章

如何用java做出左侧是菜单栏,单击,右侧可进行页面切换的效果,求源代码

QT Designer 菜单栏事件响应问题。

qt3.3.8的designer里如何添加静态函数

Qt菜单如何引用Qt内置图标?

如何用vue实现二级菜单栏

Qt学习三 - 菜单栏工具栏状态栏