Qt 禁用QGroupBox的标题

Qt 禁用QGroupBox的标题,qt,Qt,给定QGroupBox,调用其成员函数“setEnabled(false)”将灰显并禁用其内容 但是,如何使方框标题变灰?如果没有简单的方法,我可能会使用一些涉及样式的变通方法。如果是,最简单的方法是什么?您需要设置的是title子控件的color属性: groupBox->setStyleSheet("QGroupBox::title{ color: gray }") 编辑 您也可以使用qpalete实现相同的效果,而不使用样式表 // Create a palette QPalett

给定QGroupBox,调用其成员函数“setEnabled(false)”将灰显并禁用其内容


但是,如何使方框标题变灰?如果没有简单的方法,我可能会使用一些涉及样式的变通方法。如果是,最简单的方法是什么?

您需要设置的是
title
子控件的
color
属性:

groupBox->setStyleSheet("QGroupBox::title{ color: gray }")
编辑

您也可以使用
qpalete
实现相同的效果,而不使用样式表

// Create a palette
QPalette palette;
palette.setColor(QPalette::Disabled, QPalette::WindowText,
                 QApplication::palette().color(QPalette::Disabled, QPalette::WindowText));
groupBox->setPalette(palette);

这回答了我(措词拙劣)的问题。然而,我实际上的意思是“灰显”,如“当其他小部件(例如QLabel)被禁用时,使其与文本的颜色相同”。我的完整解决方案是:qpalete palete=QApplication::palete();QColor color=palete.color(qpalete::Disabled,qpalete::Text);groupBox->setStyleSheet(“QGroupBox::title{color:“+color.name()+”}”)`查看我的更新答案,了解使用选项板和不使用样式表的更好方法