Qt 问题 判断QTreeWidget的子节点的父节点是否可见

cpp 复制代码
bool JudgeParentItemVisible(QTreeWidgetItem * pLayerItem)
{
	bool bVisible = true;
	QTreeWidgetItem * pParentItem = (QTreeWidgetItem *)pLayerItem->parent();	//获取父节点
	if (pParentItem != NULL)	//父节点不为空
	{
		if (pParentItem->checkState(0) == Qt::CheckState::Unchecked)	//如果不可见返回false
		{
			bVisible = false;
			return bVisible;
		}
		bVisible = JudgeParentItemVisible(pParentItem);	//可见继续判断父节点的可见性
	}
	else	//说明是一级节点
	{
		if (pLayerItem->checkState(0) == Qt::CheckState::Unchecked)	//如果不可见返回false
		{
			bVisible = false;
		}
	}
	return bVisible;
}
相关推荐
AI科技星几秒前
基于空间光速螺旋第一性原理的电荷本源定义与电场时空协变方程的完整推导、严格证明及全尺度数值验证
c语言·开发语言·算法·机器学习·数据挖掘
马猴烧酒.3 分钟前
【Java复习|Lambda表达式】Java Lambda 表达式、函数式接口与匿名内部类:从起源到原理
java·开发语言·ide·笔记·python·spring
fengfuyao9856 分钟前
C# 高仿QQ截图工具(支持自定义快捷键)
开发语言·c#
2401_857918299 分钟前
C++与自动驾驶系统
开发语言·c++·算法
GfovikS0610020 分钟前
C++中的函数式编程
开发语言·c++·算法
2401_8579182921 分钟前
C++中的构建器模式
开发语言·c++·算法
酉鬼女又兒23 分钟前
零基础快速入门前端JavaScript Array 常用方法详解与实战(可用于备赛蓝桥杯Web应用开发)
开发语言·前端·javascript·chrome·蓝桥杯
小罗和阿泽27 分钟前
GUI 自动化测试 pywinauto测试框架
开发语言·python·功能测试·测试工具·pytest
小杍随笔29 分钟前
【Rust 语言编程知识与应用:元编程详解】
开发语言·后端·rust
gCode Teacher 格码致知30 分钟前
Javascript提高:JavaScript Promise 超通俗解释-由Deepseek产生
开发语言·javascript