一、序言

顶级浮动窗口是大型软件中的常备组件,例如Visual Studio Code软件界面:
在这里插入图片描述
在上图中,将软件界面划分为不同的功能区,每个功能区负责显示软件的一部分功能。在上图中有项目工程管理窗口、文本编辑窗口、控制台命令行窗口、左侧的代码缩略图窗口等。

还有的大型软件,他的这些功能区域下将会包含多个浮动子窗口,这些子窗口可以使用鼠标拖动、停靠或者随意组合成一个较大的浮动窗口。

那么,在Qt开发工具下,提供了QDockWidget用于停靠窗口的设计和开发。本文将分享一个浮动窗口的增强版:【Advanced Docking System for Qt】

使用【Advanced Docking System for Qt】增强版的浮动窗口系统可以加快多区域、多窗口大型软件的开发进度。

二、Advanced Docking System for Qt

【项目URL】
https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System


【特点】

  1. 可以随处Docking,没有中心Widget
  2. 可以在浮动窗口内部停靠
  3. 支持组拖动
  4. 支持用于快速切换完整主窗口布局的透视图
  5. 不透明和非不透明的分割器大小调整
  6. 支持不透明和非不透明窗口取消停靠
  7. 支持选项卡菜单,方便处理许多选项卡停靠部件
  8. 有多种方法来分离停靠部件
  9. 支持动态创建小部件的删除

【效果图】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


三、总结

本文主要分享了一个用于开发多窗口显示软件的浮动窗口系统,该项目是一个开源项目,其源码也值得学习和研究。


搜索关注【嵌入式小生】wx公众号获取更多精彩内容>>>>
请添加图片描述

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐