Qt Widget 删除之后还会显示 问题

目录

[问题描述:Qt QWidget 删除之后还会显示](#问题描述:Qt QWidget 删除之后还会显示)

解决方案:

[Part1: 使用 deleteLater](#Part1: 使用 deleteLater)

[Part2: 使用 setParent(nullptr) 父控件为空](#Part2: 使用 setParent(nullptr) 父控件为空)

[还有一种不常用的方法 隐藏:](#还有一种不常用的方法 隐藏:)


问题描述:Qt QWidget 删除之后还会显示

Qt 无论使用

复制代码
	while (Layout->count() > 0) {
			QLayoutItem *item = Layout->takeAt(0);
			Layout->removeItem(item);
		}

还是使用:

复制代码
QVBoxLayout::removeWidget(QWidget *w)

解决方案:

经测试有以下两种方案:

Part1: 使用 deleteLater
复制代码
widget->deleteLater();

layout->removeWidget(widget);
Part2: 使用 setParent(nullptr) 父控件为空
复制代码
widget->setParent(nullptr);

layout->removeWidget(widget);
还有一种不常用的方法 隐藏:
复制代码
widget->hide();
相关推荐
布莱克6058 小时前
单例模式详解:什么是单例模式,它能解决哪些问题?
开发语言·qt·单例模式
qq762118229 小时前
windows Qt mingw 编译libzip
开发语言·windows·qt
skr爱码士9 小时前
10_Qt Designer 与 UI 文件(.ui 原理、uic 编译、动态加载)
c++·qt·ui·客户端
IT爱学堂9 小时前
QT原理与源码分析可以学到什么 QT视频课程 QT课程推荐 最新推荐
开发语言·qt
躺着听Jay9 小时前
QT交叉编译
开发语言·qt
Quz9 小时前
QML 焦点导航:Tab 顺序与方向键移动
qt
程与留9 小时前
11_常用控件速查(上):QPushButton、QLabel、QLineEdit、QComboBox
c++·qt
Quz9 小时前
QML 按键事件之方向控制
qt
Littlehero_1211 天前
QT自定义控件之内嵌报表(4)(源码开源)
开发语言·qt
lqj_本人1 天前
鸿蒙跨端实战_QT后台切换导致OpenGLES上下文丢失:黑屏自救指南
qt·华为·harmonyos