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();
相关推荐
矛取矛求5 小时前
QT的前景与互联网岗位发展
开发语言·qt
Leventure_轩先生5 小时前
[WASAPI]从Qt MultipleMedia来看WASAPI
开发语言·qt
晓纪同学15 小时前
QT-简单视觉框架代码
开发语言·qt
威桑15 小时前
Qt SizePolicy详解:minimum 与 minimumExpanding 的区别
开发语言·qt·扩张策略
飞飞-躺着更舒服15 小时前
【QT】实现电子飞行显示器(简易版)
开发语言·qt
fyzy15 小时前
Qt获取本地计算的CPU温度
qt
cbdg375715 小时前
Qt 6 QML Settings location 不创建指定路径文件
qt
了一li15 小时前
Qt中的QProcess与Boost.Interprocess:实现多进程编程
服务器·数据库·qt
杨德杰15 小时前
QT网络(一):主机信息查询
网络·qt
黄金右肾15 小时前
Qt之串口设计-线程实现(十二)
qt·thread·serialport