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);");
相关推荐
西岸行者4 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码4 天前
嵌入式学习路线
学习
毛小茛4 天前
计算机系统概论——校验码
学习
babe小鑫4 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms4 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下4 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。4 天前
2026.2.25监控学习
学习
im_AMBER4 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J4 天前
从“Hello World“ 开始 C++
c语言·c++·学习