您的位置:首页 > 编程语言 > Qt开发

Qt学习3之QDockWidget

2017-01-08 11:07 423 查看
学习了一遍QDockWidget类的使用,停靠窗口,选择基类为“QMainWindow”

#include "qtdockwidget.h"
#include <QTextEdit>
#include <QDockWidget>

QtDockWidget::QtDockWidget(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
setWindowTitle(tr("DockWindows"));
//设置主窗口的标题栏文字
QTextEdit *te = new QTextEdit(this);
//定义一个QTextEdit对象作为主窗口
te->setText(tr("Main Window"));
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();
te1->setText(tr("Window1,The dock widget can be moved between docks by the user" ""));
dock->setWidget(te1);
//将TextEdit加入停靠窗体
addDockWidget(Qt::RightDockWidgetArea, dock);
//将停靠窗体1加入主窗体中,放在右边
//停靠窗口2
dock = new QDockWidget(tr("DockWindow2"), this);
dock->setFeatures(QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetFloatable); //可关闭、可浮动
QTextEdit *te2 = new QTextEdit();
te2->setText(tr("Window2,The dock widget can be detached from the main window,""and floated as an independent window, and can be closed"));
dock->setWidget(te2);
addDockWidget(Qt::RightDockWidgetArea, dock);
//停靠窗口3
dock = new QDockWidget(tr("DockWindow3"), this);
dock->setFeatures(QDockWidget::AllDockWidgetFeatures); //全部特性
QTextEdit *te3 = new QTextEdit();
te3->setText(tr("Window3,The dock widget can be closed, moved, and floated"));
dock->setWidget(te3);
addDockWidget(Qt::RightDockWidgetArea, dock);
}
效果如图:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  visual studio ui qt qt5 class