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();
相关推荐
深蓝海拓6 分钟前
PySide6从0开始学习的笔记(十二) QProgressBar(进度条)
笔记·python·qt·学习·pyqt
神仙别闹34 分钟前
基于 SeetaFace+VS2017+Qt 的人脸识别
开发语言·qt
XXYBMOOO1 小时前
Qt 调用 DLL 实现固件升级进度弹窗(完整实战案例)
开发语言·qt·性能优化·简单工厂模式
深蓝海拓1 小时前
PySide6从0开始学习的笔记(十六) 定时器QTimer
笔记·python·qt·学习·pyqt
ht巷子1 小时前
Qt:信号与槽
开发语言·c++·qt
Rabi'2 小时前
Windows系统 Qt 整合 OpenCV4.12.0
开发语言·windows·qt·opencv
XXYBMOOO20 小时前
全面解析 Qt `QMessageBox` 类及其常用方法
开发语言·qt·microsoft
网安_秋刀鱼21 小时前
【java安全】shiro反序列化1(shiro550)
java·开发语言·安全·web安全·网络安全·1024程序员节
恋恋西风1 天前
qt listwidget ,tablewidget, tree widget 区别,使用场景
qt·listwidget·treewidget·tablewidget
宠..1 天前
为单选按钮绑定事件
运维·服务器·开发语言·数据库·c++·qt·microsoft