Windows图形界面(GUI)-QT-C/C++ - QT Dock Widget

  • 公开视频 -> 链接点击跳转公开课程
  • 博客首页 -> ​​​链接点击跳转博客主页

目录

一、概述

二、使用场景

1. 工具栏

2. 侧边栏

3. 调试窗口

三、常见样式

1. 停靠位置

2. 浮动窗口

3. 可关闭

4. 可移动

四、属性设置

1. 设置内容

2. 获取内容

3. 设置标题

4. 获取标题

5. 设置特性

6. 获取特性

7. 设置可停靠区域

8. 获取可停靠区域

五、信号与槽

1. 浮动状态改变信号

2. 可停靠区域改变信号

3. 特性改变信号


一、概述

QDockWidget 是 Qt 框架中用于创建可停靠窗口的组件。它允许用户在主窗口的四周(顶部、底部、左侧、右侧)停靠或浮动显示一个独立的窗口。QDockWidget 广泛应用于工具栏、侧边栏、调试窗口等场景,为用户提供灵活的界面布局和操作体验。


二、使用场景

1. 工具栏

QDockWidget 可以用作工具栏,例如文件浏览器、属性编辑器等。用户可以根据需要将工具栏停靠在主窗口的任意一侧,或将其浮动为独立窗口。

2. 侧边栏

在复杂的应用程序中,侧边栏通常用于显示项目视图、导航面板等内容。QDockWidget 可以方便地实现侧边栏的停靠和浮动功能。

3. 调试窗口

在开发或调试过程中,调试窗口(如变量查看器、日志输出等)是必不可少的工具。QDockWidget 可以将调试窗口停靠在主窗口的任意位置,方便开发者查看和操作。


三、常见样式

1. 停靠位置

QDockWidget 可以停靠在主窗口的四个区域:

  • 顶部Qt::TopDockWidgetArea

  • 底部Qt::BottomDockWidgetArea

  • 左侧Qt::LeftDockWidgetArea

  • 右侧Qt::RightDockWidgetArea

2. 浮动窗口

QDockWidget 可以作为独立的窗口浮动在主窗口之外,用户可以通过拖动标题栏将其移动到任意位置。

3. 可关闭

QDockWidget 可以设置为可关闭,用户可以通过关闭按钮关闭停靠窗口。

4. 可移动

用户可以通过拖动标题栏来移动停靠窗口,调整其位置或将其停靠到其他区域。


四、属性设置

QDockWidget 提供了丰富的属性设置方法,开发者可以通过这些方法灵活地配置停靠窗口的行为和外观。

1. 设置内容

QTextEdit *textEdit = new QTextEdit;
dockWidget->setWidget(textEdit);

2. 获取内容

QWidget *widget = dockWidget->widget();

3. 设置标题

dockWidget->setWindowTitle("Dock Widget");

4. 获取标题

QString title = dockWidget->windowTitle();

5. 设置特性

dockWidget->setFeatures(QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetMovable);

6. 获取特性

QDockWidget::DockWidgetFeatures features = dockWidget->features();

7. 设置可停靠区域

dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);

8. 获取可停靠区域

Qt::DockWidgetAreas areas = dockWidget->allowedAreas();

五、信号与槽

1. 浮动状态改变信号

connect(dockWidget, &QDockWidget::topLevelChanged, this, &MyClass::onTopLevelChanged);

2. 可停靠区域改变信号

connect(dockWidget, &QDockWidget::allowedAreasChanged, this, &MyClass::onAllowedAreasChanged);

3. 特性改变信号

connect(dockWidget, &QDockWidget::featuresChanged, this, &MyClass::onFeaturesChanged);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/69192.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

8.PPT:小李-第二次世界大战【21】

目录 NO123 ​ NO4567 ​ NO8\9\10\11​ 图片→格式→大小对话框→锁定纵横比✔动画→飞入→效果选项:方向/序列→开始→持续时间→延迟时间持续时间:1s延迟:0.5s音频剪切时间:0.5s:00:00.500自动换片时间设置&…

GAN(生成对抗网络,Generative Adversarial Network)

https://www.bilibili.com/video/BV1mp4y187dm/?spm_id_from333.788.recommend_more_video.2&vd_source35b06c13f470dff84c947fa3045bafc3

【C++】多态详细讲解

本篇来聊聊C面向对象的第三大特性-多态。 1.多态的概念 多态通俗来说就是多种形态。多态分为编译时多态(静态多态)和运⾏时多态(动态多态)。 编译时多态:主要就是我们前⾯讲的函数重载和函数模板,他们传不同类型的参数就可以调⽤不同的函数,通…

NeuralCF 模型:神经网络协同过滤模型

实验和完整代码 完整代码实现和jupyter运行:https://github.com/Myolive-Lin/RecSys--deep-learning-recommendation-system/tree/main 引言 NeuralCF 模型由新加坡国立大学研究人员于 2017 年提出,其核心思想在于将传统协同过滤方法与深度学习技术相结…

【自动化办公】批量图片PDF自定义指定多个区域识别重命名,批量识别铁路货物运单区域内容改名,基于WPF和飞桨ocr深度学习模型的解决方案

项目背景介绍 铁路货运企业需要对物流单进行长期存档,以便后续查询和审计。不同的物流单可能包含不同的关键信息,通过自定义指定多个区域进行识别重命名,可以使存档的图片文件名具有统一的规范和明确的含义。比如,将包含货物运单…

Qt跨屏窗口的一个Bug及解决方案

如果我们希望一个窗口覆盖用户的整个桌面,此时就要考虑用户有多个屏幕的场景(此窗口要横跨多个屏幕),由于每个屏幕的分辨率和缩放比例可能是不同的,Qt底层在为此窗口设置缩放比例(DevicePixelRatio&#xf…

LeetCode:63. 不同路径 II

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的! 代码随想录 LeetCode:63. 不同路径 II 给定一个 m x n 的整数数组 grid。一个机器人初始位于 左上角(即 grid[0][0]…

自定义数据集 使用paddlepaddle框架实现逻辑回归

导入必要的库 import numpy as np import paddle import paddle.nn as nn 数据准备: seed1 paddle.seed(seed)# 1.散点输入 定义输入数据 data [[-0.5, 7.7], [1.8, 98.5], [0.9, 57.8], [0.4, 39.2], [-1.4, -15.7], [-1.4, -37.3], [-1.8, -49.1], [1.5, 75.6…

如何利用maven更优雅的打包

最近在客户现场部署项目,有两套环境,无法连接互联网,两套环境之间也是完全隔离,于是问题就来了,每次都要远程到公司电脑改完代码,打包,通过网盘(如果没有会员,上传下载慢…

string类OJ练习题

目录 文章目录 前言 一、反转字符串 二、反转字符串 II 三、反转字符串中的单词 III 四、验证一个字符串是否是回文 五、字符串相加(大数加法) 六、字符串相乘(大数乘法) 七、把字符串转化为整数(atoi) 总结…

(一)DeepSeek大模型安装部署-Ollama安装

大模型deepseek安装部署 (一)、安装ollama curl -fsSL https://ollama.com/install.sh | sh sudo systemctl start ollama sudo systemctl enable ollama sudo systemctl status ollama(二)、安装ollama遇到网络问题,请手动下载 ollama-linux-amd64.tgz curl -L …

面对全球化的泼天流量,出海企业如何观测多地域网络质量?

作者:俞嵩、白玙 泼天富贵背后,技术挑战接踵而至 随着全球化进程,出海、全球化成为很多 Toc 产品的必经之路,保障不同地域、不同网络环境的一致的用户体验成为全球化应用的不得不面对的问题。在跨运营商、跨地域的网络环境中&am…

蓝桥杯备考:模拟算法之字符串展开

P1098 [NOIP 2007 提高组] 字符串的展开 - 洛谷 | 计算机科学教育新生态 #include <iostream> #include <cctype> #include <algorithm> using namespace std; int p1,p2,p3; string s,ret; void add(char left,char right) {string tmp;for(char ch left1;…

FPGA学习篇——Verilog学习1

1 数电基础知识&#xff08;后续可能还会继续补充&#xff09; 1.1 逻辑电平 这张图比较重要以及陌生的应该是高阻态Z&#xff0c;他是一个未知值&#xff0c;不一定为高也不一定为低电平&#xff0c;X是只能高电平和低电平中二选一。 1.2 进制 进制有常见的二进制&#xff0…

C++的 I/O 流

本文把复杂的基类和派生类的作用和关系捋出来&#xff0c;具体的接口请参考相关文档 C的 I/O 流相关的类&#xff0c;继承关系如下图所示 https://zh.cppreference.com/w/cpp/io I / O 的概念&#xff1a;内存和外设进行数据交互称为 I / O &#xff0c;例如&#xff1a;把数…

【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(四) -> 常见组件(一)

目录 1 -> List 1.1 -> 创建List组件 1.2 -> 添加滚动条 1.3 -> 添加侧边索引栏 1.4 -> 实现列表折叠和展开 1.5 -> 场景示例 2 -> dialog 2.1 -> 创建Dialog组件 2.2 -> 设置弹窗响应 2.3 -> 场景示例 3 -> form 3.1 -> 创建…

《Python预训练视觉和大语言模型》:从DeepSeek到大模型实战的全栈指南

就是当代AI工程师的日常&#xff1a;* - 砸钱买算力&#xff0c;却卡在分布式训练的“隐形坑”里&#xff1b; - 跟着论文复现模型&#xff0c;结果连1/10的性能都达不到&#xff1b; - 好不容易上线应用&#xff0c;却因伦理问题被用户投诉…… 当所有人都在教你怎么调用…

【Elasticsearch】date range聚合

好的&#xff0c;继续之前的示例&#xff1a; json ] } } } } 4.3 自定义键&#xff08;key&#xff09; 通过为每个范围指定一个唯一的键&#xff08;key&#xff09;&#xff0c;可以在结果中更方便地引用每个范围。这在使用keyed参数将结果以键值对形式返回时尤其有用。 j…

ElasticSearch 学习课程入门(二)

引子 前文已经介绍了ES的增删改查基本操作&#xff0c;接下来&#xff0c;我们学习下高级点的用法。OK&#xff0c;那就让我们开始吧。 一、ES高级操作 1、条件查询 &#xff08;1&#xff09;GET https://127.0.0.1:9200/shopping/_search?qcategory:小米 &#xff08;2&…

6.PPT:魏女士-高新技术企业政策【19】

目录 NO1234​ NO567 ​ NO1234 创建“PPT.pptx”考生文件夹Word素材文档&#xff1a;选中对应颜色的文字→选中对应的样式单击右键按下匹配对应文字&#xff1a;应用所有对应颜色的文字开始→创建新的幻灯片→从大纲&#xff1a;考生文件夹&#xff1a;Word素材重置 开始→版…