Qt中的MDI多对话框程序框架
2016-05-13 20:44
423 查看
//全部基于MainWindow
//---------------------------------------------------------------------- 1
#include <QMainWindow>
#include <QMdiArea>
class MainWindow : public QMainWindow
{
private:
Ui::MainWindow *ui;
QMdiArea *m_mdiArea;
QMdiSubWindow *subWin;
};
//---------------------------------------------------------------------------- 2
void MainWindow::CreateMdiArea()
{
//设定MDI
m_mdiArea = new QMdiArea;
this->setCentralWidget(m_mdiArea);
//设置启动窗口
Dialog333 *label = new Dialog333();
subWin = new QMdiSubWindow;
subWin->setWidget(label);
subWin->setAttribute(Qt::WA_DeleteOnClose);
m_mdiArea->addSubWindow(subWin);
subWin->setWindowFlags(Qt::FramelessWindowHint);
subWin->setStyleSheet("QPushButton {background: white;border: 1px solid rgb(41, 57, 85);border-radius: 3px; font-weight: bold; QPushButton:hover { background: lightgray;}");
subWin->setStyleSheet("QLabel #Title{color:blue;}");
subWin->resize(QSize(1200,800));
subWin->show();
}
//--------------------------------------------------------------------- 3
//---------------------------------------------------------------------- 1
#include <QMainWindow>
#include <QMdiArea>
class MainWindow : public QMainWindow
{
private:
Ui::MainWindow *ui;
QMdiArea *m_mdiArea;
QMdiSubWindow *subWin;
};
//---------------------------------------------------------------------------- 2
void MainWindow::CreateMdiArea()
{
//设定MDI
m_mdiArea = new QMdiArea;
this->setCentralWidget(m_mdiArea);
//设置启动窗口
Dialog333 *label = new Dialog333();
subWin = new QMdiSubWindow;
subWin->setWidget(label);
subWin->setAttribute(Qt::WA_DeleteOnClose);
m_mdiArea->addSubWindow(subWin);
subWin->setWindowFlags(Qt::FramelessWindowHint);
subWin->setStyleSheet("QPushButton {background: white;border: 1px solid rgb(41, 57, 85);border-radius: 3px; font-weight: bold; QPushButton:hover { background: lightgray;}");
subWin->setStyleSheet("QLabel #Title{color:blue;}");
subWin->resize(QSize(1200,800));
subWin->show();
}
//--------------------------------------------------------------------- 3
void MainWindow::open()
{
//设置启动窗口
m_mdiArea->closeAllSubWindows();
Dialog222 *label = new Dialog222();
subWin = new QMdiSubWindow;
subWin->setWidget(label);
subWin->setAttribute(Qt::WA_DeleteOnClose);
m_mdiArea->addSubWindow(subWin);
subWin->setWindowFlags(Qt::FramelessWindowHint);
subWin->setStyleSheet("QPushButton {background: white;border: 1px solid rgb(41, 57, 85);border-radius: 3px; font-weight: bold; QPushButton:hover { background: lightgray;}");
subWin->resize(QSize(1200,800));
subWin->show();
}
相关文章推荐
- qt中的TabWidget应用程序框架
- QTableWidget使用技巧
- VS2012 + QT5.4.0 + OPENCV249 环境搭建小结
- Qt之图形(简笔画-绘制漂亮的西瓜)
- Qt之图形(简笔画-绘制漂亮的西瓜)
- Windows下QT软件发布
- qwt在Mac OSX10.11.2/3 + Qt5.5.0环境下的配置要求
- Qt: 渐变填充
- QTableView中文本根据内容自动换行的简单方法
- 文章标题
- VS调试Qt的时候只显示QString地址不显示值
- [QT] SQLite操作
- Qt触屏放缩事件
- Qt使用总结(转)
- Qt之图形(绘制漂亮的圆弧)
- Qt之图形(绘制漂亮的圆弧)
- Qt之图形(QPainterPath)
- Qt之图形(QPainterPath)
- VS2010编译Qt4
- Win10 + VS2015 下编译 Qt5.6.0