📜  qspinbox 值已更改 - Python (1)

📅  最后修改于: 2023-12-03 15:04:44.189000             🧑  作者: Mango

qspinbox值已更改 - Python

在 PyQt5 中,QSpinBox 是一种用于输入数字值的小部件。当用户更改这个部件上的值时,会发出一个 QSpinBox.valueChanged 信号,可以使用它来捕获值的变化并执行操作。

例如,以下代码演示了如何创建一个 QSpinBox,当用户更改值时,在控制台打印该值:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QSpinBox

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        
        self.spin_box = QSpinBox(self)
        self.spin_box.move(50, 50)
        self.spin_box.valueChanged.connect(self.handle_value_changed)

    def handle_value_changed(self, value):
        print(f"Value changed to {value}")

if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = MainWindow()
    main_window.show()
    sys.exit(app.exec_())

在这个例子中,我们创建了一个 QSpinBox,当用户更改值时,handle_value_changed 函数会打印该值。我们通过 valueChanged 信号连接这个函数,这表示每次值发生更改时,函数会自动被调用。

以上代码需要在 QApplication 事件循环中运行,因此我们创建一个 QApplication 对象,并通过 sys.exit(app.exec_()) 使程序保持运行状态,直到所有窗口都被关闭。

QSpinBox 是一个非常有用的小部件,适合用于要求用户输入数字的场合。使用 PyQt5 的信号和槽机制,可以轻松地捕获 QSpinBox 值的变化,并作出相应的操作。