在这段代码中,我想用PyQt5制作QSlider的GUI。我只想在移动滑块时打印出不断变化的值。但在这里,它只打印90,这是滑块的主要值。在
N.B:我知道可以从valuechange函数打印连续变化的值。但我只需要从init函数打印值。在
代码:
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import (QApplication, QCheckBox, QGridLayout,
QGroupBox,QMenu, QPushButton,
QRadioButton, QVBoxLayout,
QWidget, QSlider,QLabel)
class sliderdemo(QWidget):
def __init__(self, parent = None):
super(sliderdemo, self).__init__(parent)
layout = QVBoxLayout()
self.sl = QSlider(Qt.Horizontal)
self.sl.setMinimum(0)
self.sl.setMaximum(180)
self.sl.setValue(90)
self.sl.setTickPosition(QSlider.TicksBelow)
self.sl.setTickInterval(10)
layout.addWidget(self.sl)
self.sl.valueChanged.connect(self.valuechange)
self.setLayout(layout)
self.setWindowTitle("slider")
print(self.valuechange())
def valuechange(self):
self.size = self.sl.value()
return self.size
def main():
app = QApplication(sys.argv)
ex = sliderdemo()
ex.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
如果你真的想,你可以:-)
相关问题 更多 >
编程相关推荐