QSpinBox是一个整型步长调节器小部件,它是QAbstractSpinBox的子类。它提供了一个方便的方式,用于从一个整数范围内选择一个数字。以下是QSpinBox的API大全和演示。
一、API大全
构造函数
- QSpinBox(parent: QWidget = None): 创建一个新的QSpinBox小部件。
方法
- value() -> int: 返回当前值
- setValue(value: int): 设置当前值
- minimum() -> int: 返回最小值
- setMinimum(minimum: int): 设置最小值
- maximum() -> int: 返回最大值
- setMaximum(maximum: int): 设置最大值
- singleStep() -> int: 返回单步大小
- setSingleStep(step: int): 设置单步大小
- prefix() -> str: 返回前缀
- setPrefix(prefix: str): 设置前缀
- suffix() -> str: 返回后缀
- setSuffix(suffix: str): 设置后缀
- textFromValue(value: int) -> str: 将整数值转换为文本字符串
- valueFromText(text: str) -> int: 将文本字符串转换为整数值
- stepBy(steps: int): 按给定的步数增加或减少当前值
信号
- valueChanged(value: int): 当值被修改时发出的信号
- editingFinished(): 编辑完成时发出的信号
二、案例演示
以下是一个简单的示例,演示了如何创建一个QSpinBox小部件,并使用它来选择一个整数值:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QSpinBox, QLabel
class MainWindow(QWidget):
def __init__(self):
super().__init__()
# 创建一个QSpinBox小部件
self.spin_box = QSpinBox()
self.spin_box.setMinimum(0)
self.spin_box.setMaximum(100)
self.spin_box.setSingleStep(1)
self.spin_box.setValue(50)
# 创建一个标签
label = QLabel("Select a value:")
# 创建一个垂直布局,并将小部件添加到其中
layout = QVBoxLayout()
layout.addWidget(label)
layout.addWidget(self.spin_box)
# 设置主窗口的布局
self.setLayout(layout)
# 连接信号和槽
self.spin_box.valueChanged.connect(self.on_value_changed)
def on_value_changed(self, value):
# 当值被修改时更新标签的文本
self.setWindowTitle("Selected value: " + str(value))
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
在上面的示例中,我们创建了一个QSpinBox小部件,并将其添加到一个垂直布局中。我们还创建了一个标签,用于指示用户选择一个整数值。当值被修改时,我们更新标签的标题。通过这个示例,您可以了解如何使用QSpinBox类及其API来选择整数值。