更改QSpinBox值时调用函数

时间:2019-07-01 12:07:14

标签: python pyqt pyqt5

我有2个QSpinBox,分别是 horTilesNum verTilesNum 。水平的数值应始终是垂直的数值的1.5倍。因此,当其中一个Spinbox的值更改时,另一个Spinbox的值也应更新。我有2个函数,但是我不知道在Spinbox值确定后如何调用它们

self.horTilesNum= QSpinBox(self)
self.horTilesNum.setRange(2,1000)
self.horTilesNum.setStyleSheet("QSpinBox {"
                                           "width: 30px;"
                                           "}")
self.horTilesNum.move(880, 178)


self.verTilesNum = QSpinBox(self)
self.verTilesNum.setRange(2,1000)
self.verTilesNum.setStyleSheet("QSpinBox {"
                                           "width: 30px;"
                                           "}")
self.verTilesNum.move(880, 203)



def update_hor_tiles_spinbox(self):
    print("horizontal changed")

def update_ver_tiles_spinbox(self):
    print("vertical changed")

1 个答案:

答案 0 :(得分:1)

尝试

self.horTilesNum.valueChanged.connect(self.update_hor_tiles_spinbox)
self.verTilesNum.valueChanged.connect(self.update_ver_tiles_spinbox)