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();
相关推荐
Quz3 小时前
QML Loader:动态创建控件与延迟加载
qt
Quz3 小时前
QML Loader:组件切换与属性传递
qt
老赵的博客3 小时前
c++QT之动态库加载常见报错
c++·qt
Quz1 天前
QML Loader:从文件加载组件、加载内联组件
qt
Quz1 天前
QML Loader: 状态监听与动态标签页
qt
似水এ᭄往昔1 天前
【Qt】--常用控件(显示类控件)
开发语言·qt
慧都小项1 天前
从 Figma 到 Qt:Qtitan 能减少哪些界面还原工作?
前端·qt·嵌入式·figma·图形界面·工业界面·qtitan
用户122003879001 天前
Qt学习之绘图入门练习
qt
西西弗Sisyphus1 天前
Qt 实现一个 Windows 启动项查看器
开发语言·windows·qt
郝学胜-神的一滴2 天前
Qt 高级编程 045:坐标体系深度实战
开发语言·c++·windows·python·qt·程序人生