【Qt】QDockWidget

来源:互联网 发布:python爬虫培训 编辑:程序博客网 时间:2024/05/17 05:11

一个简单的停靠窗口类:

设置三种停靠窗口:(1)可浮动;(2)可移动、可关闭;(3)具备以上所有特性

#include "mainwindow.h"#include<QTextEdit>#include<QDockWidget>MainWindow::MainWindow(QWidget *parent)    : QMainWindow(parent){    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 and users"""));    dock->setWidget(te1);    addDockWidget(Qt::RightDockWidgetArea,dock);    //停靠窗口2    dock=new QDockWidget(tr("DockWindow2"),this);    dock->setFeatures(QDockWidget::DockWidgetClosable|QDockWidget::DockWidgetFloatable);//可关闭可浮动    QTextEdit *te2 = new QTextEdit();    te1->setText(tr("Window2,The dock widget can be detac from the main window,""and float 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();    te1->setText(tr("Window3,The dock widget can be closed,moved,and float"));    dock->setWidget(te3);    addDockWidget(Qt::RightDockWidgetArea,dock);}MainWindow::~MainWindow(){}



如果有部分函数看不懂,建议先理解前面零星的小控件的设置。

 

结果展示:

 

0 0
原创粉丝点击