我正在尝试使用.setId在QButtonGroup中设置值,但出现类型错误

时间:2019-02-21 19:02:34

标签: python user-interface pyqt5 typeerror

嘿,我正在尝试为行星模拟器编写GUI。我正在使用PyQt5和QComboBox。我知道comboBox的值使用负数,例如。 -2为第一个框,但是当我尝试将其设置为-2时,出现TypeError。

这是按钮组的颜色:

self.colors = QButtonGroup()
    self.blue = QCheckBox("Blue")
    self.red = QCheckBox("Red")
    self.yellow = QCheckBox("Yellow")
    self.green = QCheckBox("Green")
    self.orange = QCheckBox("Orange")
    self.purple = QCheckBox("Purple")
    self.pink = QCheckBox("Pink")
    self.white = QCheckBox("White")
    self.colors.addButton(self.blue)
    self.colors.addButton(self.red)
    self.colors.addButton(self.yellow)
    self.colors.addButton(self.green)
    self.colors.addButton(self.orange)
    self.colors.addButton(self.purple)
    self.colors.addButton(self.pink)
    self.colors.addButton(self.white)

这是我尝试设置的方法:

`if planet == "Planet 1":
    self.slider1.setValue(planets.p1.radius)
    self.colors.setId(planets.p1.colour)'

显然planets.p1.colour的值是一个整数(例如,如果我希望行星为蓝色,则该值将为-2,这对应于Planet类中的颜色。)

我得到的错误是:

TypeError: setId(self, QAbstractButton, int): argument 1 has unexpected type 'int'

我在做什么错了?

0 个答案:

没有答案