用Qt Creator实现Qt对话框上的菜单

最近要用Qt写个小工具,其中需要实现Qt对话框上的菜单效果:

网上相关的例子不少,不过基本上都是通过代码来实现的,基本步骤是:

  • 先new一堆的QAction
  • 再new一堆的QMenu并按照菜单的层次组织好
  • 最后还要写一堆的connect,将action和响应函数关联好

看看我这里的这么多菜单项,如果全用代码来实现,这不要累死个人吗?于是想到了用Qt Creator来解决问题。

不幸的是,基于QDialog的ui是无法配置菜单的,只有基于QMainWindow的ui才能配置菜单:


不知道为什么Qt Creator的组件工具箱中也没有菜单这个组件。那该怎么玩?好在Qt的ui说到底不过就是一个xml文件,我直接用Qt Creator搞不定的,我还不能直接编辑xml文件吗?

那就来试一试吧,先创建一个基于QMainWindow的ui,然后在这里组织和编辑各个菜单项,工具自动的生成了相应的action,这很不错。

然后保存。打开ui文本,将其中和菜单、action相关的xml拷贝出来:

<span style="color:#FF0000;">  <widget class="QMenuBar" name="menubar">
   <property name="geometry">
    <rect>
     <x>0&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值