class Dialog(QtGui.QDialog):
def __init__(self):
QtGui.QDialog.__init__(self)
self.setFixedSize(200,200)
self.spinbox = QtGui.QSpinBox()
self.spinbox.setRange(0,100)
self.spinbox.setValue(50)
self.slider = QtGui.QSlider(QtCore.Qt.Horizontal)
self.slider.setRange(0,100)
self.lcd = QtGui.QLCDNumber(5)
self.line_edit = QtGui.QLineEdit()
self.line_edit.setText("start")
self.quit = QtGui.QPushButton('Quit')
self.connect(self.slider,QtCore.SIGNAL("valueChanged(int)"),self.spinbox,QtCore.SLOT("setValue(int)"))
self.connect(self.slider,QtCore.SIGNAL("valueChanged(int)"),self.lcd_changed)
self.connect(self.quit,QtCore.SIGNAL("clicked()"),self,QtCore.SLOT('close()'))
self.layout_a = QtGui.QHBoxLayout()
self.layout_a.addWidget(self.spinbox)
self.layout_a.addWidget(self.slider)
self.layout_b = QtGui.QHBoxLayout()
self.layout_b.addWidget(self.lcd)
self.layout_b.addWidget(self.line_edit)
self.layout = QtGui.QVBoxLayout()
self.layout.addWidget(self.quit)
self.layout.addLayout(self.layout_a)
self.layout.addLayout(self.layout_b)
self.setLayout(self.layout)
def lcd_changed(self):
value = self.slider.value()
self.lcd.display(value)
self.line_edit.setText(str(value))
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
widget = Dialog()
widget.setWindowTitle('mmc')
widget.show()
sys.exit(app.exec_())
# 面向对象