禁用QRadioButton看起来启用python

时间:2014-05-16 17:55:13

标签: python-2.7 pyside qradiobutton

我正在尝试禁用QRadioButtons看起来已启用。我希望它们看起来正常,但不允许用户更改它们。我尝试了QRadioButton.setCheckable(False)然后设置QRadioButton.setChecked(True)。可以假设,QRadioButton.setChecked(True)不起作用,因为它被setCheckable推翻。我怎么能这样做,以编程方式,我可以将radiobutton设置为已选中,但是用户无法更改它?

我试过像QPalette这样:

pal = self.SearchPastDB.missingFood.palette()
pal.setColor(QPalette.Disabled, QPalette.Text, pal.color(QPalette.Active, QPalette.Text))
pal.setColor(QPalette.Disabled, QPalette.Base, pal.color(QPalette.Active, QPalette.Base))
self.SearchPastDB.poorQual.setPalette(pal)
self.SearchPastDB.wrongFood.setPalette(pal)
self.SearchPastDB.missingFood.setPalette(pal)

我也尝试过:

pal = QPalette()
pal.setColor(QPalette.Disabled, QPalette.Text, pal.color(QPalette.Active, QPalette.Text))
pal.setColor(QPalette.Disabled, QPalette.Base, pal.color(QPalette.Active, QPalette.Base))
self.SearchPastDB.poorQual.setPalette(pal)
self.SearchPastDB.wrongFood.setPalette(pal)
self.SearchPastDB.missingFood.setPalette(pal)

这也不起作用,所以我觉得我可能做错了。

1 个答案:

答案 0 :(得分:0)

只需将QRadioButton样式表设置为与enabled..just put

相同
QRadioButton{_YOUR_STYLESHEET_}

QRadioButton::disabled{_YOUR_STYLESHEET_}

QRadioButton::indicator同样为其提供相同的已启用样式