当前位置: 首页 » 网站建设 » 网站制作知识 » 正文

Qt Qt-Advanced-Docking-System介绍及使用教程

发布时间:2025-01-10 以下文章来源于网友投稿,内容仅供参考!

一.概述

1.控件描述

  QT自带的Dock布局管理大家都用过,中规中矩,但是满足不了现在ui强大的人机交互需求。而QtAdvancedDockingSystem在Dock的基础上进一步完善功能,具有更高的自由度、灵活性和可扩展性,满足程序员对人机交互的自由定义。这个开源控件类似于Devexpress中的DockPanel。

二.使用教程

1.新建QT项目

在新建项目时,要选择子目录项目。

新建父项目后,会自动弹出子项目新建选项。
这个按照常规QT项目新建。

到这里,项目新建完成,下面可以开始编写代码了。
2.引入QtAdvancedDockingSystem
解压QtAdvancedDockingSystemmaster.zip,找到src和ads.pri。

将src和ads.pri拷贝到父项目文件夹下

打开父项目.pro文件,在.pro中添加

DockUse.depends = src

打开子项目中.pro文件,在.pro中添加

1 # dock use 2 ADS_OUT_ROOT = $$/.. 3 4 # dock use 5 DESTDIR = $$/lib 6 ConFIG += debug_and_release 7 adsBuildStatic 10 11 #LIBS += L$$/lib 12 include(../ads.pri) 13 INCLUDEPATH += ./src 14 DEPENDPATH += ./src 15 LIBS += LD:/LiumuyiProgram/QTCode/TestPrograms/DoclProTest/ lqtadvanceddockingd

在mainwindoh中,引用

1 #include "../src/DockManager.h" 2 #include "qlabel.h"

定义变量

ads::CDockManager* m_pDockManager;

在mainwindocpp中,可以在构造函数中加入:

1 m_pDockManager = new ads::CDockManager(this); 2 3 QLabel* l = new QLabel(); 4 l>setWordWrap(true); 5 l>setAlignment(Qt::AlignTop | Qt::AlignLeft); 6 l>setText("Lorem ipsum dolor sit amet, consectetuer adipiscing elit. "); 7 8 9 ads::CDockWidget* DockWidget = new ads::CDockWidget("Label 1"); 10 DockWidget>setWidget(l); 11 12 QLabel* ll = new QLabel(); 13 ll>setWordWrap(true); 14 ll>setAlignment(Qt::AlignTop | Qt::AlignLeft); 15 ll>setText("Lorem ipsum dolor sit amet, consectetuer adipiscing elit. "); 16 17 18 ads::CDockWidget* DockWidget1 = new ads::CDockWidget("Label 2"); 19 DockWidget1>setWidget(ll); 20 21 22 ui>menubar>addAction(DockWidget>toggleViewAction()); 23 ui>menubar>addAction(DockWidget1>toggleViewAction()); 24 25 m_pDockManager>addDockWidget(ads::TopDockWidgetArea, DockWidget); 26 m_pDockManager>addDockWidget(ads::TopDockWidgetArea, DockWidget1);

然后依次构造编译,就完成了!


  • • VisualStdio2022使用JetBrainsMono字体

    背景听说这个字体是最方便程序员的,那么为了追赶潮流我也理当试试。第一步:下载与安装下载【官网】JetBrains Mono: A free and

  • • Fiddler 汉化补丁

    汉化过程:1.安装Fiddler,比如我的Fiddler安装在:D:\Programs\Fiddler2.将FiddlerTexts.txt复制到D:\Programs\Fiddler\3.将FdT

  • • Windows 下编译 GNU barcode 库

    gnu barcode 是一个用来生成条形码的库。主页在:gnu/software/barcode/对这个库就不多介绍了。因为装了 MSYS2, 本来觉得编译这

  • • Qt Creator9.0生成工程后没有.pro文件

    Qt Creator9.0 默认建立的widget项目只有CMakeLists.txt文件,没有pro文件发现生成工程文件时默认选择的是cmake,不是qmake导致

  • • Qt Creator 9.0 设置代码编辑器JetBrainsMono字体

    下载github/JetBrains/JetBrainsMono/releases解压将下载的压缩包中的ttf文件拷贝到C:\Qt\Tools\QtCreator\share\qtcreator\fo

  • 2025年霜降是哪一天-2025年霜降几点几分
    今年哪天霜降-今日霜降是几点几分
    霜降节气的特点和风俗-霜降节气风俗大全
    2025大寒是阳历几月几日?2025大寒是哪一天
    2025万圣节是几号?今年万圣节是几月几日
    今年的霜降是几月几号?2025霜降是哪一天
    铁路12306密码格式有什么要求_铁路12306密码设置规则说明
    2025年中国的重阳节是农历的哪一天
    2025年重阳节是几月几日?2025年重阳节是哪一天
    万圣节是哪个国家的节日?万圣节源自于哪个国家