代码:
#include "dockmainwindow.h"
#include <QTextCodec>
#include <QTextEdit>
#include <QDockWidget>
#pragma execution_character_set("utf-8")
DockMainWindow::DockMainWindow(QWidget *parent)
: QMainWindow(parent)
{
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
setWindowTitle(tr("停靠窗口例子"));
QTextEdit *te=new QTextEdit(this);
te->setText(tr("左边主窗口"));
te->setAlignment(Qt::AlignCenter);
setCentralWidget(te);
//右窗口1
QDockWidget *dock=new QDockWidget(tr("dockwindow1"),this);
dock->setFeatures(QDockWidget::DockWidgetMovable);
dock->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea);
QTextEdit *te1=new QTextEdit(this);
te1->setText(tr("Window1"));
dock->setWidget(te1);
addDockWidget(Qt::RightDockWidgetArea,dock);
//右窗口2
QDockWidget *dock2=new QDockWidget(tr("dockwindow2"),this);
dock->setFeatures(QDockWidget::DockWidgetClosable|QDockWidget::DockWidgetFloatable);
QTextEdit *te2=new QTextEdit(this);
te2->setText(tr("Window2"));
dock2->setWidget(te2);
addDockWidget(Qt::RightDockWidgetArea,dock2);
//右窗口3
QDockWidget *dock3=new QDockWidget(tr("dockwindow3"),this);
dock3->setFeatures(QDockWidget::AllDockWidgetFeatures);
QTextEdit *te3=new QTextEdit(this);
te3->setText(tr("Window3"));
dock3->setWidget(te3);
addDockWidget(Qt::RightDockWidgetArea,dock3);
}
DockMainWindow::~DockMainWindow()
{
}
运行后得到的界面: