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();
相关推荐
奇树谦15 分钟前
QML 开发前端界面详解:从入门到示例实战
qt
我在人间贩卖青春1 小时前
重学Qt——网络编程
qt
caicai_xiaobai5 小时前
Notepad++手动安装 Hex-Editor 插件
qt
郝学胜-神的一滴6 小时前
Qt 高级开发 015:C++ 原生实现信号槽机制
开发语言·c++·qt·软件构建·用户界面
我在人间贩卖青春7 小时前
重学Qt——数据可视化
qt
sycmancia9 小时前
Qt——查找对话框的功能实现
开发语言·qt
x秀x9 小时前
双击EXE启动程序,出现QT动态链接库报错,解决方法
开发语言·qt
尤老师FPGA12 小时前
QT下载与安装
开发语言·qt
奇树谦12 小时前
深入理解 Qt 插件系统:原理、实现与实践
qt
郝学胜-神的一滴19 小时前
Qt 高级开发 009: C++ Lambda 表达式
开发语言·c++·qt·软件构建