Qt-Advanced-Docking-System的学习

Qt-Advanced-Docking-System使用说明_cdockmanager-CSDN博客

示例1:

cpp 复制代码
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include "DockManager.h"
#include "QtDock/DockAreaWidget.h"
namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    ads::CDockManager* m_pDockManger;
};

#endif // MAINWINDOW_H
cpp 复制代码
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QLabel>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //创建CDockManager对象
    m_pDockManger=new ads::CDockManager(this);
    this->setCentralWidget(m_pDockManger);
    //创建CDockWidget窗口对象
    ads::CDockWidget* pDockWidget1=new ads::CDockWidget("页面1");
    //QLabel对象
    QLabel *Label=new QLabel(pDockWidget1);
    Label->setText("demo");
    //添加容器
    pDockWidget1->setWidget(Label);
    //将pDockWidget1添入CDockManager页面布局中
    m_pDockManger->addDockWidget(ads::RightDockWidgetArea,pDockWidget1);
}

MainWindow::~MainWindow()
{
    delete ui;
}

示例2:

cpp 复制代码
    //创建CDockManager对象
    m_pDockManger=new ads::CDockManager(this);
    this->setCentralWidget(m_pDockManger);
    //创建CDockWidget窗口对象
    ads::CDockWidget* pDockWidget1=new ads::CDockWidget("页面1");
    //QLabel对象
    QLabel *Label=new QLabel(pDockWidget1);
    Label->setText("demo");
    //添加容器
    pDockWidget1->setWidget(Label);
    //将pDockWidget1添入CDockManager页面布局中
    m_pDockManger->addDockWidget(ads::RightDockWidgetArea,pDockWidget1);

    ads::CDockWidget* pDockWidget2=new ads::CDockWidget("页面2");
    QLabel *Label2=new QLabel(pDockWidget2);
    Label2->setText("demo2");
    pDockWidget2->setWidget(Label2);
    m_pDockManger->addDockWidget(ads::LeftDockWidgetArea,pDockWidget2);

示例3:

cpp 复制代码
    //创建CDockManager对象
    m_pDockManger=new ads::CDockManager(this);
    this->setCentralWidget(m_pDockManger);
    //创建CDockWidget窗口对象
    ads::CDockWidget* pDockWidget1=new ads::CDockWidget("页面1");
    //QLabel对象
    QLabel *Label=new QLabel(pDockWidget1);
    Label->setText("demo");
    //添加容器
    pDockWidget1->setWidget(Label);
    //将pDockWidget1添入CDockManager页面布局中
    m_pDockManger->addDockWidget(ads::RightDockWidgetArea,pDockWidget1);

    ads::CDockWidget* pDockWidget2=new ads::CDockWidget("页面2");
    QLabel *Label2=new QLabel(pDockWidget2);
    Label2->setText("demo2");
    pDockWidget2->setWidget(Label2);
    m_pDockManger->addDockWidget(ads::LeftDockWidgetArea,pDockWidget2);

    ads::CDockWidget* pDockWidget3=new ads::CDockWidget("页面3");
    QLabel *Label3=new QLabel(pDockWidget3);
    Label3->setText("demo3");
    pDockWidget3->setWidget(Label3);
    m_pDockManger->addDockWidget(ads::TopDockWidgetArea,pDockWidget3);

示例4:

cpp 复制代码
    ads::CDockManager::setConfigFlag(ads::CDockManager::ActiveTabHasCloseButton, false);
cpp 复制代码
    ads::CDockManager::setConfigFlag(ads::CDockManager::ActiveTabHasCloseButton, true);

不显示tab

复制代码
    pDockWidget1->setFeature(ads::CDockWidget::NoTab,true);

使用qss

cpp 复制代码
pDockWidget1->setStyleSheet("background-color: rgb(224, 220, 216);");
相关推荐
知识分享小能手7 分钟前
Ubuntu入门学习教程,从入门到精通,Linux操作系统概述(1)
linux·学习·ubuntu
yuhaiqun19891 小时前
Typora 技能进阶:从会写 Markdown 到玩转配置 + 插件高效学习笔记
经验分享·笔记·python·学习·学习方法·ai编程·markdown
我命由我123452 小时前
Python Flask 开发问题:ImportError: cannot import name ‘Markup‘ from ‘flask‘
开发语言·后端·python·学习·flask·学习方法·python3.11
全栈陈序员2 小时前
【Python】基础语法入门(二十)——项目实战:从零构建命令行 To-Do List 应用
开发语言·人工智能·python·学习
AA陈超2 小时前
枚举类 `ETriggerEvent`
开发语言·c++·笔记·学习·ue5
小六*^____^*2 小时前
虚拟列表学习
前端·javascript·学习
代码游侠2 小时前
学习笔记——IPC(进程间通信)
linux·运维·网络·笔记·学习·算法
charlie1145141913 小时前
如何把 Win32 窗口“置顶”(Windows + C++)
开发语言·c++·windows·笔记·学习·软件工程
名字不相符3 小时前
BUUCTF题目列表Misc题目(个人记录与学习)(第二页)
学习·misc·buuctf·萌新
点云SLAM3 小时前
Mitigation 英文单词学习
学习·英文单词学习·雅思备考·降低风险或影响·缓解、减轻·mitigation