QT——QMainWindow窗口介绍之菜单栏

前面对QT项目创建及不同窗口之间的区别进行了介绍(QMainWindow,QWidget,QDialog区别,可见上一篇文章),本节内容对QMainWindow窗口的应用及布局进行介绍。

日常使用的软件好像都有一些共性,包含标题栏、菜单栏、工具栏、状态栏及主应用窗口(例如:office,Photoshop)。QMainWindow类拥有自己的布局,我们可以使用QMenuBar(菜单栏)、QToolBar(工具栏)、QStatusBar(状态栏)以及QDockWidget(悬浮窗体),布局有一个可由任何种类小窗口所占据的中心区域。

QMainWindow常常被继承,因为这使得封装中央部件、菜单和工具条以及窗口状态条变得更容易,当用户点击菜单项或者工具条按钮时,槽会被调用。
在这里插入图片描述

菜单栏

一个主窗口只能创建一个菜单栏。菜单栏位于标题栏的下方。菜单栏内可以有多个菜单项,每项菜单可包含多个活动。

创建菜单栏,需通过QMainWindow类的menubar()函数获取窗口菜单栏指针

QMenuBar * menuBar() const

可调用addMenu来添加菜单,在手册中提供3中方式调用addMenu,可以根据需求选择并传入相应的参数

QAction* addMenu(QMenu * menu)
QMenu* addMenu(const QString & title)
QMenu* addMenu(const QIcon & icon, const QString & title)

创建菜单项,调用QMenu的成员函数addAction来添加菜单项

QAction* activeAction() const
QAction* addAction(const QString & text)
QAction* addAction(const QIcon & icon, const QString & text)
QAction* addAction(const QString & text, const QObject * receiver,const char * member, const 
QKeySequence & shortcut = 0)
QAction* addAction(const QIcon & icon, const QString & text,const 
QObject * receiver, const char * member,const 
QKeySequence & shortcut = 0)9

Qt 没有专门的菜单项类,只是使用一个QAction类,抽象出公共的动作。当我们把QAction对象添加到菜单,就显示成一个菜单项,添加到工具栏,就显示成一个工具按钮。用户可以通过点击菜单项、点击工具栏按钮、点击快捷键来激活这个动作。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值