C++ | Qt QMainWindow类及资源文件的使用

19 篇文章 5 订阅

目录

一、QMainWindow类介绍

1.菜单栏QMenuBar

2.工具栏QToorBar

3.状态栏QStatusBar

4.铆接部件(浮动窗口)QDockWidget

5.核心部件(中心部件)

二、资源文件的使用


一、QMainWindow类介绍

通过QMainWindow类可以创建一个顶层窗口,该窗口可包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个铆接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget)。

菜单栏等布局既可以用代码实现,也可直接操作UI界面直接设计。

1.菜单栏QMenuBar

一个主窗口最多只有一个菜单栏。位于主窗口顶部、主窗口标题栏下面。

    //创建菜单栏,菜单栏只能有一个
    QMenuBar *bar=menuBar();
    setMenuBar(bar);
    //创建菜单
    QMenu *fileMenu=bar->addMenu("文件");
    QMenu *editMenu=bar->addMenu("编辑");
    //创建菜单项
    fileMenu->addAction("新建");
    fileMenu->addAction("打开");
    //添加分割线
    fileMenu->addSeparator();

    QMenu *saveMenu=fileMenu->addMenu("保存");
    saveMenu->addAction("另存为");

2.工具栏QToorBar

工具栏可以有多个,默认是可被拖动的。

    //工具栏,可以有多个,工具栏可以拖动
    QToolBar *toolBar=new QToolBar(this);
    //设置工具栏位置
    addToolBar( Qt::LeftToolBarArea,toolBar);
    //只允许左右停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);
    //不可浮动
    toolBar->setFloatable(false);
    //不可拖动
    toolBar->setMovable(false);
    //工具栏中创建内容
    toolBar->addAction("欢迎");
    toolBar->addSeparator();
    toolBar->addAction("编辑");
    toolBar->addSeparator();
    QPushButton *btn=new QPushButton("帮助",this);
    toolBar->addWidget(btn);

3.状态栏QStatusBar

一个窗口最多只有一个状态栏,一般放在底部。

    //状态栏 最多有一个
    QStatusBar *status_Bar=statusBar();
    setStatusBar(status_Bar);
    QLabel *left_label1=new QLabel("下载1",this);
    status_Bar->addWidget(left_label1);
    QLabel *left_label0=new QLabel("下载2",this);
    status_Bar->insertWidget(0,left_label0);
    QLabel *right_label=new QLabel("右侧提示信息",this);
    status_Bar->addPermanentWidget(right_label);

4.铆接部件(浮动窗口)QDockWidget

铆接部件可以有多个,默认可以拖动。

    //铆接部件(浮动窗口)可有多个
    QDockWidget *dockWidget=new QDockWidget("浮动窗口",this);
    addDockWidget(Qt::RightDockWidgetArea,dockWidget);

 

5.核心部件(中心部件)

中心显示的部件都可以作为核心部件,例如一个记事本文件,可以利用QTextEdit做核心部件

    QTextEdit *edit=new QTextEdit("中心部件",this);
    setCentralWidget(edit);

    QPushButton *btn1=new QPushButton("按钮",this);
    setCentralWidget(btn1);

    

 

二、资源文件的使用

Qt 资源系统是一个跨平台的资源机制,用于将程序运行时所需要的资源以二进制的形式存储于可执行文件内部。【编译工程之后,我们可以在构建目录中找到 qrc_res.cpp 文件,这就是 Qt 将我们的资源编译成了 C++ 代码】

1.引入资源文件时,新建Qt Resources File后,需要先Add Prefix,再Add Files。

2.使用资源文件格式::前缀/文件

    ui->actionnew->setIcon(QIcon(":new/texture/Images/up.png"));
    ui->actionedit->setIcon(QIcon(":new/texture/Images/down.png"));

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烫青菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值