(四)窗口mainwindow
常用控件:
lable: 可以放文本,图片,动态图片,链接
Text Edit: 富文本编辑框:多行文本,HTML,图片
Line Edit: 只能放一行
Plain Edit: 只能显示多行文本
最下面的是状态栏,可以放任意的widget,状态栏部件不能直接拖放,需要:
ui->statusBar->addWidget(new QPushButton("hello",this)); ui->statusBar->addWidget(new QLabel("world",this));
菜单栏,和状态栏只有一个,工具栏可以有多个
mymainwindow.cpp
#include "mymainwindow.h" #include "ui_mymainwindow.h" #include <QDebug> #include <QFileDialog> MyMainWindow::MyMainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MyMainWindow) { ui->setupUi(this); connect(ui->actionopen,&QAction::triggered,this,[=](){ QString filename = QFileDialog::getOpenFileName(this,tr("open file"), tr("E:\\"), tr("Images (*.png *.xpm *.jpg);;Text files (*.txt)")); qDebug() << filename.toUtf8().data(); }); } MyMainWindow::~MyMainWindow() { delete ui; }
mymainwindow.h
#ifndef MYMAINWINDOW_H #define MYMAINWINDOW_H #include <QMainWindow> namespace Ui { class MyMainWindow; } class MyMainWindow : public QMainWindow { Q_OBJECT public: explicit MyMainWindow(QWidget *parent = nullptr); ~MyMainWindow(); private: Ui::MyMainWindow *ui; }; #endif // MYMAINWINDOW_H