QMdiArea相关

Qt全屏显示函数         window.showFullScreen()

Qt最大化显示函数         window.showMaximized()

Qt最小化显示函数         window.showMinimized()

Qt固定尺寸显示函数         window.resize(x,y)

void MainWindow::on_action_21_triggered() { HelpWnd *hw=new HelpWnd(this); if(!ui->mdiArea->subWindowList().isEmpty()) { ui->mdiArea->closeAllSubWindows(); } QMdiSubWindow *subWindow = ui->mdiArea->addSubWindow(hw,0); subWindow->setWindowTitle(tr("帮助文档")); subWindow->showMaximized(); }

以下是如何利用QT creator给QmdiArea添加背景图片

一.属性设置里将QMdiArea组里的background 下的style设置成no brush    就是不用任何画刷填充颜色

二.利用stylesheet设置background-image或者border-image

前者是平铺方式设置背景,后者是拉伸方式设置背景

 

 

下面的代码用于遍历QMdiSubWindow list里的窗口   当新建窗口时可以保证实例的唯一性      用子窗口的windowtitle作为判断标志

 void MainWindow::on_action_21_triggered() { bool flags=false; if(ui->mdiArea->subWindowList().isEmpty()) { HelpWnd *hw = new HelpWnd(this); QMdiSubWindow *subWindow = ui->mdiArea->addSubWindow(hw,0); subWindow->setWindowTitle(tr("帮助文档")); subWindow->showMaximized(); } else { for(int i=0;i<ui->mdiArea->subWindowList().size();i++) { if(tr("帮助文档")==ui->mdiArea->subWindowList().at(i)->windowTitle()) { ui->mdiArea->subWindowList().at(i)->showMaximized(); flags=true; } } if(flags==false) { HelpWnd *hw = new HelpWnd(this); QMdiSubWindow *subWindow = ui->mdiArea->addSubWindow(hw,0); subWindow->setWindowTitle(tr("帮助文档")); subWindow->showMaximized(); } } }

你可能感兴趣的:(list,文档,action,qt,stylesheet)