Qt常用控件的创建和使用

Qt常用控件的创建和使用

#include "mainwindow.h"
#include <QMenuBar>
#include <QToolBar>
#include <QPushButton>
#include <QStatusBar>
#include <QLabel>
#include <QDockWidget>
#include <QTextEdit>


MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    this->resize(600,400);  //Set the window size

    QMenuBar *bar = menuBar();  //创建菜单栏,只能一个
    setMenuBar(bar);    //将菜单栏设置到窗口中

    QMenu * fileMenu = bar->addMenu("文件");
    QMenu * editMenu = bar->addMenu("编辑");


    //添加文件菜单项
    QAction * createAction = fileMenu->addAction("创建");
    fileMenu->addSeparator();//添加分割线
    QAction * closeAction = fileMenu->addAction("关闭");
    fileMenu->addSeparator();//添加分割线

    //添加编辑菜单栏
    QAction * copyAction = editMenu->addAction("拷贝");
    QAction * pasteAction = editMenu->addAction("粘贴");

    //菜单栏 可以有很多个
    QToolBar *toolBar = new QToolBar(this);
    //将工具栏放入窗口中
    addToolBar(Qt::LeftToolBarArea, toolBar);

    //只允许左右停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea
                             | Qt::TopToolBarArea | Qt::BottomToolBarArea);
    //设置是否允许浮动
    toolBar->setFloatable(false);
    //设置是否允许移动
    toolBar->setMovable(true);

    //在工具栏中添加控件
    QPushButton *btn = new QPushButton("按钮1",this);
    QPushButton *btn1 = new QPushButton("按钮2",this);
    btn1->setStyleSheet("QPushButton{color:red}");
    QPushButton *btn2 = new QPushButton("按钮3",this);

    toolBar->addWidget(btn);
    toolBar->addSeparator();
    toolBar->addWidget(btn1);
    toolBar->addSeparator();
    toolBar->addWidget(btn2);

    //状态栏,只有一个
    QStatusBar * status = statusBar();
    //将状态栏放入到窗口中
    setStatusBar(status);

    //创建标签
    QLabel * label1 = new QLabel("左侧信息", this);
    //将label放入到状态栏中
    status->addWidget(label1);
    QLabel * label2 = new QLabel("右侧信息", this);
    status->addPermanentWidget(label2);

    //铆接部件 浮动窗口 可以多个
    QDockWidget * dock = new QDockWidget("铆接部件", this);
    //将铆接部件放到窗体的核心部件的下方
    addDockWidget(Qt::BottomDockWidgetArea, dock);
    //铆接部件设置停靠范文
    dock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);

    //创建核心部件 只能有一个
    QTextEdit * edit = new QTextEdit(this);
    //将文本编辑 放到窗体中间
    setCentralWidget(edit);
}

MainWindow::~MainWindow()
{

}

总结:直接使用set方法的窗口中只能有一个,使用add方法的窗口中可以有很多个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值