qt中setFixedSize和resize的区别,半悬浮效果的实现

在Qt中,`setFixedSize()`和`resize()`都是用于设置窗口大小的两个方法,它们的区别如下:

  1. `setFixedSize()`方法会将窗口的大小固定为指定的宽度和高度,不允许用户手动调整窗口大小。这意味着无论用户如何尝试调整窗口大小,它都会保持固定的尺寸。这个方法通常用于需要固定大小的窗口,例如自定义的对话框或固定大小的小部件。

  2. `resize()`方法允许你设置窗口的大小,并且允许用户通过拖动边框来调整窗口大小。用户可以根据需要自由调整窗口的大小。这个方法通常用于可调整大小的窗口,例如主窗口或应用程序窗口。

好了,上述解释比较官方,基本意思得知道。

那么当你使用resize的时候,如果背景widget的大小固定了,而这上面的子控件大小你没有固定,即用的是resize,而不是setfixedsize,那么子控件不受背景widget的控制,所以就会出现子控件能够溢出背景widget的现象。

这种现象可以用来做悬浮效果,就是,子控件的一部分在背景widget里面,但是还有一部分溢出了背景Widget的边框。

各位可以尝试尝试,当然了,也可以用图片在视觉上实现悬浮效果。

相关推荐
名字还没想好☜7 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
酷在前行9 小时前
【R生态】PERMANOVA 进阶实战:距离选择、PERMDISP、两两比较与受限置换(保姆级教程)
开发语言·r语言
cxr8289 小时前
Graphify vs GitNexus vs CodeGraph — 三工具架构深度对比
开发语言·架构·知识图谱
废弃的小码农10 小时前
功能测试--Day07--Python编程基础
开发语言·python
fengci.11 小时前
Microweber CMS 未授权路径穿越漏洞(CVE-2026-65694)
android·开发语言·前端·学习·php
程序员zgh11 小时前
C++ 拷贝赋值运算符 详解
c语言·开发语言·c++
念何架构之路11 小时前
restartmanager-重启管理子系统
java·开发语言
SomeB1oody12 小时前
【RustyML入门】2.0. 经典机器学习
开发语言·后端·机器学习·rust·教程
05664613 小时前
Python高级——解释器执行原理与虚拟环境工程化实战
开发语言·python
HJX_072414 小时前
嵌入式软件C语言八股文复习笔记5——编译、链接与底层硬核机制
c语言·开发语言·笔记