zoukankan      html  css  js  c++  java
  • 7、菜单栏、工具栏、状态栏、浮动窗口、TextEdit

    新建项目,基类选择QMainWindow,不勾选ui

      

    mainwindow.cpp代码:

    #include "mainwindow.h"
    #include <QMenuBar> //引入菜单栏
    #include <QMenu> //菜单
    #include <QAction> //菜单项
    #include <QToolBar> //引入工具栏
    #include <QPushButton>
    #include <QDebug>
    #include <QStatusBar>//状态栏
    #include <QLabel>
    #include <QTextEdit>//文本编辑
    #include <QDockWidget> //浮动窗口
    
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
    {
        //菜单栏//
        QMenuBar *mBar=menuBar(); //菜单栏,QMenuBar *mBar=new QMenuBar(this);等效
        QMenu *pFile=mBar->addMenu("文件"); //菜单
        QAction *pNew = pFile->addAction("新建"); //菜单项
    
        connect(pNew,&QAction::triggered,[](){
            qDebug()<<"新建被按下";
        });
        pFile->addSeparator(); //分割线
        QAction *pOpen=pFile->addAction("打开"); //菜单项
        //工具栏//
        QToolBar *tBar=addToolBar("工具栏");//鼠标右键,可以显示、隐藏“工具栏”
        tBar->addAction(pNew);
        QPushButton *b=new QPushButton(this); //创建对象,并指定父窗体
        b->setText("点击被更改");
        tBar->addWidget(b); //添加按钮控件
        connect(b,&QPushButton::clicked,
                [b](){
            b->setText("被更改");
        });
        //状态栏//
        QStatusBar *sBar=statusBar();
        QLabel *label=new QLabel(this);
        label->setText("状态栏");
        sBar->addWidget(label); //默认从左往右添加
        sBar->addWidget(new QLabel("状态栏2",this));
        sBar->addPermanentWidget(new QLabel("状态栏3",this));//右侧开始添加
        //文本框//
        QTextEdit *tEdit=new QTextEdit(this);
        setCentralWidget(tEdit);//将控件放到窗体中心位置
        //浮动窗口//
        QDockWidget *dWidget=new QDockWidget("浮动窗口",this);//鼠标右键,可以显示、隐藏“浮动窗口”
        addDockWidget(Qt::RightDockWidgetArea,dWidget);//位于窗体右侧
        QTextEdit *tEdit2=new QTextEdit(this);//给浮动窗口添加控件
        dWidget->setWidget(tEdit2);
    }
    
    MainWindow::~MainWindow()
    {
    
    }
  • 相关阅读:
    一个提高查找速度的小技巧
    COM是一个更好的C++
    15道简单算法题
    非递归实现文件夹遍历
    《STL系列》之map原理及实现
    《STL系列》之vector原理及实现
    MVC5 IIS7 403错误
    Vue在线客服系统【开源项目】
    Xcode No account for team "". Add a new account in the Accounts preference pane or verify that your accounts have valid credentials.
    CSS flex布局
  • 原文地址:https://www.cnblogs.com/xixixing/p/10907584.html
Copyright © 2011-2022 走看看