【发布时间】:2022-11-01 21:19:15
【问题描述】:
我的 python 和 qt UI 中有一个按钮模式。图案是 3x3,这意味着总共 9 个按钮。 每个按钮都有特定的功能。现在我正在寻找一种方法来在选中 1 个按钮时禁用其他 8 个按钮,并在未选中按钮时重新激活其他 8 个按钮。
我尝试创建一个按钮列表以在单击按钮时对其进行迭代,但由于列表中的按钮变成了字符串,因此未能使其正常工作。
class Startscreen(QDialog):
def __init__(self):
super(Startscreen,self).__init__()
loadUi("Main.ui",self)
self.pushButton.clicked.connect(self.funct1)
self.pushButton_2.clicked.connect(self.funct2)
self.pushButton_3.clicked.connect(self.funct3)
self.pushButton_4.clicked.connect(self.funct4)
self.pushButton_5.clicked.connect(self.funct5)
self.pushButton_6.clicked.connect(self.funct6)
self.pushButton_7.clicked.connect(self.funct7)
self.pushButton_8.clicked.connect(self.funct8)
self.pushButton_9.clicked.connect(self.funct9)
def funct1(self,checked):
if checked:
self.dosomething(1)
elif not checked:
print("i am not checked")
还有 8 个其他的 def 函数。所以我需要帮助来找到一种方法,当调用 1 个函数时如何禁用其他 8 个按钮。 我不想每次都复制粘贴 self.pushButton_2-9.setEnabled(False)。 有没有更优雅的方法来做到这一点?
【问题讨论】:
标签: python