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

自学QT之停靠窗口

2015-09-04 11:07 309 查看
相当一部分软件界面上都会有一个停靠窗口,在不用的时候可以移动调整大小,但是他不是分割实现的,而是停靠窗口。

新建一个工程,名字随便取好了,类名为:dockwindows.cpp继承的基类保持mainwindow不变,取消界面选项。

在dockwindows.cpp文件中添加以下代码:

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

DockWindows::DockWindows(QWidget *parent)
    : QMainWindow(parent)
{
    setWindowTitle("dockwindows");
    QTextEdit *text=new QTextEdit(this);
    text->setAlignment(Qt::AlignCenter);
    text->setText("主窗口");
    setCentralWidget(text);
    //第一个停靠窗口
    QDockWidget *dock=new QDockWidget("我的dock窗口",this);
    dock->setFeatures(QDockWidget::DockWidgetMovable);
    QTextEdit *te1=new QTextEdit();
    te1->setText("该dock窗口可以被用户移动");
    dock->setWidget(te1);
    addDockWidget(Qt::RightDockWidgetArea,dock);
    //第二个停靠窗口
    dock=new QDockWidget("我的第二个dock窗口");

    QTextEdit *te2=new QTextEdit();
    te2->setText("这里是第二个窗口");
    dock->setWidget(te2);
    addDockWidget(Qt::RightDockWidgetArea,dock);
    //第三个dock窗口
    dock=new QDockWidget("这里是第三个dock窗口");
    dock->setFeatures(QDockWidget::AllDockWidgetFeatures);
    QTextEdit *te3=new QTextEdit("这里是第三个");
    dock->setWidget(te3);
    addDockWidget(Qt::RightDockWidgetArea,dock);

}

DockWindows::~DockWindows()
{

}
运行后的结果如图:



右侧的停靠窗口可以随意移动,并且其它窗口会跟着自动调整。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: