QDockWidget - 浮动时没有边框的窗口

2024-03-24

赢7、Qt 5.3

I use a QDockWidget与我的申请。按预期工作。

现在我通过设置隐藏标题栏setTitleBarWidget(new QWidget(this))到默认构造的小部件。根据 Qt 文档,这是标准方法。也可以,标题栏不见了。

为了将我的小部件取消停靠为窗口,我使用myDockWidget->setFloating(true)(在我自己的插槽中)。但现在,当小部件取消停靠时,浮动窗口不再有边框(因此无法移动)。

如果我评论掉setTitleBarWidget , also myDockWidget->setFloating(true)作品。所以原来的标题栏似乎融入了一些逻辑。然而,通过查看源代码,我找不到任何特别的地方。

有什么提示我可以做些什么来克服这个问题吗?


这是预期的行为。看QDockWidget::setTitleBarWidget docs:

如果设置了标题栏小部件,QDockWidget 在浮动时将不会使用本机窗口装饰。

此行为的目的是允许为停靠小部件实现完全自定义的标题栏。

解决方法是连接到QDockWidget::topLevelChanged当小部件变为浮动或停靠时发出的信号,并在其浮动时将标题栏小部件设置为 0 以恢复默认行为。

请注意,当设置默认标题栏小部件时,不会删除以前的标题栏小部件,因此您应该删除以前使用的 QWidget 或保存指向它的指针并在下次使用它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QDockWidget - 浮动时没有边框的窗口 的相关文章

随机推荐

  • Spring Boot 中的代理设置

    我的应用程序需要从 Web 获取 XML 文件 如下所示 Bean public HTTPMetadataProvider metadataProvider throws MetadataProviderException String m
  • 未排序数组中的前 5 个元素

    给定一个未排序的数组 我们需要以有效的方式找到前 5 个元素 但我们无法对列表进行排序 我的解决方案 找到数组中的最大元素 在 处理 使用此最大元素后删除它 重复步骤 1 和 2 k 次 本例中为 5 次 时间复杂度 O kn O n 空间
  • WooCommerce - 发送有关自定义订单状态更改的自定义电子邮件

    我添加了自定义状态wc order confirmed Register new status function register order confirmed order status register post status wc o
  • OS X Lion 中的 easy_install pip 需要 sudo 吗?

    我从工作中的 Snow Leopard 转到家里的 Lion 安装 我不记得必须 sudo easy install pip 狮子需要这个吗 在我这样做之前我遇到了错误 pip 最终出现在这里 some computer which pip
  • 大规模分布式系统中的日志文件

    我在网格和 HPC 领域做了很多工作 对于分布在数百 或在某些情况下数千 服务器上的系统 我们面临的最大挑战之一是分析日志文件 当前日志文件本地写入每个刀片上的磁盘 但我们也可以考虑使用 UDP Appender 等发布日志信息并集中收集
  • PyDSTool 与 anaconda 未正确安装

    我正在尝试使用 anaconda2 安装 PyDSTool conda install PyDSTool 这似乎进展顺利 但是当我打开spyder并导入PyDSTool时 它给了我错误 import PyDSTool Traceback m
  • “scrollViewDidScroll”无法连续捕获移动

    我正在编写程序来在滚动 UITableView 时移动名为 myView 的 UIView 请看下面的图片 myView 会随着tableview的contentoffset的变化而改变它的 y坐标 我编写的主要代码是 func scrol
  • 使用 Knockout-Kendo.js 动态启用/禁用 kendo 日期选择器

    我正在尝试使用 Knockout Kendo js 根据选择的选定值启用 禁用 kendo 日期选择器 HTML
  • 将我的 HTML Google MAP API 版本 2 迁移到版本 3

    我将非常感谢对此的帮助 我的 html v2 文件和一些临时密钥工作正常 我从一些 XML 中获取位置 创建不同的颜色标记 并从信息窗口中的 XML 属性添加一些 URL 不是太复杂 现在我需要将其迁移到 v3 我找到了 v2 中函数的一些
  • 找不到 id= 的用户 (ActiveRecord::RecordNotFound)

    使用我的 Rails 应用程序 我可以成功创建一个对象 称为工作 将它们视为博客文章 作为 current user 一个用户 has many 可以工作 我可以通过使用 postgresql 浏览器检查数据库来验证该对象是否已成功创建 该
  • TMUX 会话不会导入 Python 模块

    大家好 这是我在 StackOverflow 上提出的第一个问题 希望大家都满意 我最近开始使用 TMUX 但在将其用于机器学习问题集时遇到问题 我正在使用 python 创建一个程序 并使用 sklearn 模块 基本上 当我在 TMUX
  • 库伯内特斯。 kubernetes 节点之间支持的最大距离/延迟是多少?

    我想创建一个 kubernetes 集群 我想要一个具有高可用性的主节点 工作节点和代理节点的集群 并且节点位于两个位置 是否记录了位置之间支持的最大距离或延迟 此外 我希望能提供官方文档的链接 但我找不到任何相关内容 谢谢 kuberne
  • 使用 GET_FILE_NAME Oracle Forms 无法打开对话框

    我有 Oracle 数据库 11g 带有 Oracle 表单和报告 11g 我创建了浏览按钮来从计算机或笔记本电脑目录中打开 CSV 文件 我在按下按钮时触发时使用此代码 declare filename varchar2 500 begi
  • R 中的 Uniroot 解决方案

    我想找到以下函数的根 x 0 5 f lt function y 1 pbeta 1 exp 0 002926543 107 2592 y 1 082618 exp 0 04097536 107 2592 y shape1 0 264022
  • 将多个文件拖放到用户窗体

    我正在尝试将多个文件拖放到用户窗体上以获取它们的路径 我用一个文件来管理它 感谢this https stackoverflow com questions 20569959 vba drag and drop file to user f
  • 如何在浏览器的调试器本身中调试动态加载的 JavaScript(使用 jQuery)?

    动态添加的脚本不会显示在浏览器调试器的脚本部分中 解释 我需要使用并且已经使用过 if someCondition true getScript myScirpt js function alert Load Complete myFunc
  • 在QWebView中设置useragent

    我有一个 QWebView 工作正常 然后 使用来自spynner 的代码 我尝试将useragent 方法绑定到自定义方法 这似乎在spynner 带有QWebPage 中有效 但在这里不起作用 非常感谢任何帮助 代码 def custo
  • Ant exec 结果属性不起作用

    我正在使用 Ant 调用批处理文件exec任务并将结果设置为resultpropery 但返回值永远不会到达Ant 下面是我的代码
  • TCPDF 可以原生将文本输出为图像吗

    TCPDF 在生成 PDF 时看起来确实很强大 由于很多事情都可以直接在 TCPDF 中完成 我想知道是否可以直接在 TCPDF 中将文本转换为图像 或者以这样的方式保存PDF 使得某些文本部分无法被机器轻松读取 目标是实现一种垃圾邮件防护
  • QDockWidget - 浮动时没有边框的窗口

    赢7 Qt 5 3 I use a QDockWidget与我的申请 按预期工作 现在我通过设置隐藏标题栏setTitleBarWidget new QWidget this 到默认构造的小部件 根据 Qt 文档 这是标准方法 也可以 标题