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();
相关推荐
十秒耿直拆包选手9 小时前
Qt:主窗体(QMainwindow)初始化注意事项
c++·qt
-凌凌漆-15 小时前
【Qt】Qt QML json处理
开发语言·qt·json
海天鹰19 小时前
Qt:图片切割
qt
做一个坚强的女汉子21 小时前
QT保存日志到文件中以及捕捉崩溃日志
开发语言·qt
顾苏洋199021 小时前
qt绘制饼状图并实现点击即放大点击部分
开发语言·qt
笑鸿的学习笔记21 小时前
qt-C++笔记之布局管理`space` 和 `margin`的区别
c++·笔记·qt
轩情吖21 小时前
Qt常用控件之QWidget(一)
c++·qt·geometry·qwidget·qpushbutton·客户端开发·enabled
没学上了21 小时前
Qt去噪面板搭建
开发语言·qt
peihexian21 小时前
vcpkg交叉编译qt等过程记录(未完成)
开发语言·qt
byxdaz1 天前
Qt中的QObject::moveToThread方法详解
qt