Qt基于开源Qt-Advanced-Docking-System实现高级窗口停靠系统

Qt-Advanced-Docking-System使用方法 Qt-Advanced-Docking-System开源项目,dock窗口完美布局。 阅读详情
  1. 下载Qt-Advanced-Docking-System-master资源包,资源包内提供了demo使用案例,github下载较慢,提供免积分资源包。

免积分下载地址:https://download.youkuaiyun.com/download/ever__ever/88677212
image.png

  1. 新建Qt项目“QtDockWindow”,复制资源包内src文件夹到Qt项目文件夹下(工作空间不包含中文),将src文件夹名称改为DockWindow。
  2. 打开Qtcreator,打开项目:选择src->DockWindow.pro

image.png

  1. 选择构建套件,此处以MinGW为例,选择debug和release生成的库不一样。然后点击“构建”,不是运行。输出目标如上,在当前项目的上一层的lib/libs文件夹内。在windows系统中我们使用dll库。

image.png

  1. 将下载下来的资源包中的ads.pri文件复制到Qt项目文件夹中。
  2. 在Qt项目pro文件中包含一下ads.pri
include(./ads.pri);
  1. 将编译生成的qtadvanceddocking.dll文件放到Qt项目目录下,在pro文件中添加一下库。
LIBS += lqtadvanceddocking
  1. 添加一下qtadvanceddocking头文件
INCLUDEPATH += ./DockWindow
DEPENDPATH += ./DockWindow
  1. 在MainWindow中使用这个库,创建两个停靠窗口
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    CDockManager::setConfigFlag(CDockManager::FloatingContainerHasWidgetTitle, true);
    CDockManager::setConfigFlag(CDockManager::FloatingContainerHasWidgetIcon, true);
    CDockManager::setConfigFlag(CDockManager::FocusHighlighting, true);
    CDockManager::setConfigFlag(CDockManager::DockAreaHasUndockButton, false);
    dockManager = new CDockManager(this);

    TestForm *aForm = new TestForm();
    aForm->setLabelText("this is window a");
    CDockWidget *aDockwidget = new CDockWidget("window a");
    aDockwidget->setWidget(aForm);
//    aDockwidget->setIcon(QIcon(":/src/images/folder.png"));

    dockAreaWidget_left = dockManager->addDockWidget(LeftDockWidgetArea, aDockwidget);
    dockAreaWidget_left->setAllowedAreas(OuterDockAreas);

    TestForm *bForm = new TestForm();
    bForm->setLabelText("this is window b");
    CDockWidget *bDockwidget = new CDockWidget("window b");
    bDockwidget->setWidget(bForm);
//    bDockwidget->setIcon(QIcon(":/src/images/folder.png"));

    dockAreaWidget_right = dockManager->addDockWidget(RightDockWidgetArea, bDockwidget);
    dockAreaWidget_right->setAllowedAreas(OuterDockAreas);
}

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

效果:
20231229_145001 00_00_00-00_00_30.gif

源码下载:https://download.youkuaiyun.com/download/ever__ever/88677418

Qt-Advanced-Docking-System配置及使用、心得 能够帮助用户保存自定义的窗口布局,并且在下次启动应用程序时恢复。这对于那些有复杂工作流程和特定界面布局偏好的用户非常有用。比如,一个专业的音频编辑软件用户可能花费了很多时间来调整各个音频轨道窗口、效果窗口和混音窗口的布局,通过这个功能,下次打开软件时就可以快速恢复到之前的工作布局。 阅读详情

相关推荐

Qt-Advanced-Docking-System:Qt的高级扩展坞系统

Qt的高级扩展坞系统 • Qt Advanced Docking System允许您使用功能齐全的窗口停靠系统创建可自定义的布局,该系统类似于许多流行的集成开发环境(IDE)(例如Visual Studio)中的功能。 新的和值得注意的 增加了以下功能: 支持Qt6。 支持 增加了一些不错的新功能: 支持概念 支持Linux上的 这两个功能都是ADS用户提供的。 阅读以了解有关这两个新功能的更多信息。 增加了新的功能。 这项可选功能使您可以像在Visual Studio中一样突出显示焦点突出的窗口小部件。 产品特点 总览 到处停靠-没有中央小部件 没有像Qt对接系统那样的中央小部件。 您可以停靠在主窗口的每个边界上,也可以停靠在每个停靠区域中-因此您几乎可以自由停靠在任何地方。 停靠在浮动窗户内 主窗口和浮动窗口之间没有区别。 支持停靠在浮动窗口中。 分组拖动 拖动停靠栏的标题栏时,将拖动与该选项卡相连的所有选项卡。 因此,您可以将完整的选项卡式窗口小部件组移动到浮动窗口小部件中,或从一个停靠区移动到另一个停靠区。 快速切换完整主窗口布局的观点 透视图定义了主窗口中停

Qt强大控件:Qt-Advanced-Docking-System介绍及使用教程

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

muyiliu的博客 5672

Qt-Advanced-Docking-System-master

Qt-Advanced-Docking-System-master

Visual Studio Qt Qt-Advanced-Docking-System 新建停靠窗口+布局记录+布局载入

最近在使用visual studio 2022和qt开发项目时,涉及到制作大数据可视化界面的工作。为了完成这一功能,查询了现有的实现方案,最终选择使用:Qt-Advanced-Docking-System作为布局方案的实现方式。如何下载Qt-Advanced-Docking-System如何在visual studio中载入Qt-Advanced-Docking-System插件如何使用Qt-Advanced-Docking-System接下来将根据这几个问题,完成本文叙述。

u011826081的博客 3213

qt Qt-Advanced-Docking-System 使用教程 示例代码

qt Qt-Advanced-Docking-System 使用教程 示例代码

Emotion-LLaMA实战指南:从零构建多模态情感识别系统(附Python代码)

本文提供了Emotion-LLaMA多模态情感识别系统的实战指南。通过详细的步骤,指导读者从零搭建开发环境、运行本地Demo、理解模型架构,并完成数据处理与模型训练。该创新模型融合视觉、听觉与文本信息,实现更精准、接近人类理解的情感分析与推理,并附有完整的Python代码实现。

weixin_29094775的博客 415

【Qt开源项目推荐】完美的Dock窗口布局解决方案 Qt-Advanced-Docking-System

【Qt开源项目推荐】完美的Dock窗口布局解决方案 Qt-Advanced-Docking-System

专注Qt与C++开发 1万+

Halcon: 获取仿射矩形-rectangle2的四个顶点、四条边的中点

Halcon 工业应用实用教程中的一个例子: * CenterY : 仿射矩形中心y * CenterX: 仿射矩形中心x * Phi: 仿射矩形角度 * Len1: 仿射矩形宽的一半 * Len2: 仿射矩形高的一半 * CornerY: 仿射矩形端点y * CornerX: 仿射矩形端点x * LineCenterY: 仿射矩形边中点y * LineCenterx: 仿射矩形边中点x * 矩...

ruotianxia的博客 8572

Qt-Advanced-Docking-System:打造专业级Qt应用程序的终极停靠系统指南

想要为你的Qt应用程序打造像Visual Studio一样专业、灵活的界面布局吗?Qt-Advanced-Docking-System(简称ADS)就是你的终极解决方案!🚀 这个强大的停靠系统库让开发者能够轻松创建可拖拽、可停靠、可浮动的现代化用户界面,彻底改变传统的Qt界面设计方式。 ## 📋 为什么选择Qt-Advanced-Docking-System? 在开发专业级桌面应用程序时,

gitblog_00533的博客 1067

sap2000 api matlab,SAP2000_API入门指南.pdf

SAP2000_API入门指南北 京 金 土 木 软 件 技 术 有 限 公 司Beijing Civil King Software TechnologyCo., Ltd.SAP2000 API 入门指南余承飞 韦群跃 汤娣概述SAP2000 API 是从 SAP2000 V11 开始引进的,即应用软件编程接口。用户可以编写程序,通过API 随心所欲地调用 SAP2000...

weixin_42118423的博客 1941

AI大模型开发——transformer模型超全完整版(0基础可懂)

为了更深入的了解transformer模型,我们首先从transformer的诞生聊起吧。transformer在2017年由Vaswani等人首次提出,它摒弃了之前流行的循环神经网络和卷积神经网络的架构,引入了自注意力机制( Self-Attention),显著提高了处理序列数据的能力和效率。transformer模型的这种设计使其在处理长距离依赖问题时, 相比于传统的循环神经网络和长短期记忆网络(LSTM)表现得更加出色,至此, 开启了NLP技术的新篇章。

m0_74922316的博客 2120

Qt高级窗口停靠系统:开源Dock资源

Qt高级窗口停靠系统:开源Dock资源 【下载地址】Qt高级窗口停靠系统开源Dock资源 Qt-Advanced-Docking-System 是一个用于 Qt 框架的高级窗口停靠系统。它为应用程序提供了强大的窗口管理和停靠功能,允许用户轻松地组织和调整应用程序中的各个窗口 ...

gitblog_09768的博客 793

Linux内存从0到1学习笔记(10.1 BugsShooter之cma配置过小导致页迁移繁忙而内存申请失败)

通过向武神讨教,顺便记录cma内存有空间但页繁忙(页正被访问,无法迁移)迁移不了导致cma内存分配失败的排查过程。

从0到1,突破自己 1万+

探索Qt高级窗口停靠系统:提升应用界面管理的新选择

探索Qt高级窗口停靠系统:提升应用界面管理的新选择 【下载地址】Qt高级窗口停靠系统开源Dock资源 Qt-Advanced-Docking-System 是一个用于 Qt 框架的高级窗口停靠系统。它为应用程序提供了强大的窗口管理和停靠功能,允许用户轻松地组织和调整应用程序中的各个窗口 ...

gitblog_09763的博客 874

【UVM实战】第七章:UVM中的寄存器模型(1)寄存器模型简介

寄存器模型简介~

悟已往之不谏 知来者之可追 2070

uniApp微信小程序:error: 60001 request:fail errcode:-101 cronet error code:-101error_msg:net::ERR CONNECTI

uni-app微信小程序域名访问报error 60001 request:fail errcode:-101,解决Uniapp微信小程序报600001错误,uni.request()接口请求报错,服务器更换SSL证书后,uniapp微信小程序出现`request:fail errcode:-101`问题分析与解决,服务器更换ssl证书后,手机访问微信小程序异常,微信小程序更换SSL证书后出现请求报错,服务器更换SSL证书,微信小程序报600001,小程序反应偶尔出现request:fail errcode:

✅ 精选推荐文章 4581

5个实用技巧:使用Qt-Advanced-Docking-System提升Qt应用程序用户体验

Qt-Advanced-Docking-System是一个强大的Qt高级停靠系统,能够帮助开发者为Qt应用程序创建灵活且用户友好的界面布局。本文将分享5个实用技巧,让你快速掌握如何利用这个工具提升应用程序的用户体验,打造专业级的多窗口交互界面。 ## 1. 轻松实现窗口拖拽与停靠功能 🚀 Qt-Advanced-Docking-System最核心的功能是允许用户自由拖拽窗口并将其停靠在应用程

gitblog_00020的博客 484

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

【免费下载】 Qt-Advanced-Docking-System 使用教程与示例代码

本仓库提供了一个关于如何使用 Qt-Advanced-Docking-System 的详细教程及示例代码。Qt-Advanced-Docking-System 是一个强大的 Qt 插件,允许开发者创建高度可定制的停靠窗口系统,适用于各种复杂的用户界面设计。 ## 资源内容 - **教程文档**:详细介绍了如何集成和使用 Qt-Advanced-Docking-System,包括基本概念、配置步

gitblog_09749的博客 886

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Qt-Advanced-Docking-System:开启Qt界面布局新纪元

Qt-Advanced-Docking-System:开启Qt界面布局新纪元 【下载地址】Qt-Advanced-Docking-SystemQt的高级扩展坞系统 Qt Advanced Docking System 是一款功能强大的Qt框架扩展,专为开发者设计,旨在打造灵活且高度可定制的窗口停靠系统。该系统借鉴了Vis...

gitblog_06736的博客 587

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Qt开源库-顶级浮动窗口系统-Advanced-Docking-System【01】

一、序言 顶级浮动窗口是大型软件中的常备组件,例如Visual Studio Code软件界面: 在上图中,将软件界面划分为不同的功能区,每个功能区负责显示软件的一部分功能。在上图中有项目工程管理窗口、文本编辑窗口、控制台命令行窗口、左侧的代码缩略图窗口等。 还有的大型软件,他的这些功能区域下将会包含多个浮动子窗口,这些子窗口可以使用鼠标拖动、停靠或者随意组合成一个较大的浮动窗口。 那么,在Qt开发工具下,提供了QDockWidget用于停靠窗口的设计和开发。本文将分享一个浮动窗口的增强版:【Advanc

iriczhao的博客 6645

如何快速上手Qt-Advanced-Docking-System:10分钟搭建Visual Studio风格界面

想要为你的Qt应用程序添加像Visual Studio那样灵活、专业的界面布局吗?Qt-Advanced-Docking-System(简称ADS)正是你需要的终极解决方案!这个强大的开源库让开发者能够轻松创建可停靠、可拖拽的现代化界面,大大提升应用程序的用户体验。无论你是Qt新手还是有经验的开发者,都能在10分钟内掌握这个强大工具的基本用法。 ## 🚀 什么是Qt-Advanced-Dock

gitblog_00485的博客 378

Qt-Advanced-Docking-System:提升Qt应用Dock体验的开源利器

Qt-Advanced-Docking-System是一款功能强大的开源Qt停靠窗口增强库。它显著提升了Qt应用的Dock体验,提供了流畅的拖拽视觉反馈、原生的标签页支持、一键式布局状态保存与恢复等高级功能,解决了原生QDockWidget在复杂桌面应用开发中的诸多痛点,是开发专业级IDE、数据分析工具等软件的利器。

git9versioner的博客 1036

Qt扩展-Advanced-Docking 简介及配置

Advanced-Docking 是类似QDockWidget 功能的多窗口停靠功能的库。很像visual stdio 的 停靠功能,这个库对于停靠使用的比较完善。很多的软件都使用了这个框架。Qt Creator从4.12版本开始,Qt Creator在其Qt Designer 中使用了该框架。CETONI Elements软件是一款全面的、基于插件的模块化实验室自动化软件,用于使用联合图形用户界面控制CETONI设备。该软件具有强大的脚本系统,可自动执行流程。

洪源兄 4885

Qt 高级停靠系统教程

Qt 高级停靠系统教程 1. 项目介绍 Qt 高级停靠系统(Qt Advanced Docking System,简称 ADS)是一个用于 Qt 的开源库,旨在提供类似于 Visual Studio 的停靠窗口管理功能。该项目通过使用基本的 Qt 功能(如 QWidgets 和 QLayouts)来实现这一目标,并且尽可能地使用基本的样式。 主要特点: 停靠窗口管理:支持类似于 Visual S...

gitblog_00160的博客 616
上一篇: Qt使用FontAwesome
下一篇: Qt5自定义控件-Qt Designer中直接拖动
taciturn丶
博客等级 码龄9年 471粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

taciturn丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值