1
私はPyQtで新しくQCheckBoxから継承した独自のチェックボックスを作成したいと思います。私がここで何をしたかPyQt引数を持つクラスからカスタムPushButton /継承を作成する
class Valve(QtGui.QCheckBox):
def __init__(self, x, y, inputs=[], outputs=[]):
QtGui.QCheckBox.__init__(self)
self.sources = inputs
self.outputs = outputs
self.move(x, y)
def is_fillable(self):
for source in self.sources:
if source.value == 100:
return 1
return 0
def stateChanged():
if isChecked():
for output in self.outputs:
if self.is_fillable():
output.fill(1)
else:
for output in self.outputs:
if self.is_fillable:
output.fill(-1)
class MainWindow(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.initUI()
def initUI(self):
self.button1 = Valve('', self, 5, 6)
self.setGeometry(0, 0, 500, 500)
self.show()
def main():
app = QtGui.QApplication(sys.argv)
ex = MainWindow()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
説明:
私は水システムを構築したいです。プログレスバーをパイプとして使用するので、コードの入力と出力はQProgressBarになり、それらの値を入力します。
しかし、私のバルブ(CheckBox)は私のウィンドウに表示されないので、引数があるのでQCheckButtonからどのように継承するのか分かりませんでした。あなたは、チェックボックスの親としてMainWindow
を渡したいと思います答え