PyQt5 QSpinBox – 访问标题

  • Post category:Python

PyQt5是Python下跨平台的图形用户界面(GUI)库,其中QSpinBox是Qt5中的一种输入控件,它可以让用户输入整数值,而PyQt5中的QSpinBox类则对应了这个控件。

访问QSpinBox的标题需要使用它的text()方法,该方法返回QSpinBox的当前标题。以下是具体的使用攻略。

引入PyQt5和sys模块

import sys
from PyQt5.QtWidgets import QApplication, QSpinBox, QWidget, QVBoxLayout

创建QSpinBox实例

my_spinbox = QSpinBox()

设置QSpinBox范围

my_spinbox.setRange(0, 100)

设置QSpinBox默认值

my_spinbox.setValue(50)

设置QSpinBox标题

my_spinbox.setPrefix('当前值为:')
my_spinbox.setSuffix(',请重新输入。')

获取QSpinBox当前值

my_spinbox.value()

获取QSpinBox当前标题

my_spinbox.text()

下面进行两个示例说明。

示例1:

在一个窗体内添加一个QSpinBox控件,并添加一个按钮,点击后将QSpinBox的标题展示在控制台上。

class MyWindow(QWidget):
    def __init__(self):
        super().__init__()

        my_spinbox = QSpinBox()
        my_spinbox.setRange(0, 100)
        my_spinbox.setValue(50)
        my_spinbox.setPrefix('当前值为:')
        my_spinbox.setSuffix(',请重新输入。')

        my_button = QPushButton('显示标题')
        my_button.clicked.connect(lambda: print(my_spinbox.text()))

        my_layout = QVBoxLayout()
        my_layout.addWidget(my_spinbox)
        my_layout.addWidget(my_button)

        self.setLayout(my_layout)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())

示例2:

在一个窗体内添加两个QSpinBox控件,一个用于设置年龄,一个用于设置身高,点击提交按钮后展示年龄和身高的信息。

class MyWindow(QWidget):
    def __init__(self):
        super().__init__()

        age_spinbox = QSpinBox()
        age_spinbox.setRange(0, 150)
        age_spinbox.setSuffix('岁')

        height_spinbox = QSpinBox()
        height_spinbox.setRange(0, 300)
        height_spinbox.setSuffix('cm')

        submit_button = QPushButton('提交')
        submit_button.clicked.connect(lambda: self.show_info(age_spinbox.value(), height_spinbox.value()))

        my_layout = QVBoxLayout()
        my_layout.addWidget(age_spinbox)
        my_layout.addWidget(height_spinbox)
        my_layout.addWidget(submit_button)

        self.setLayout(my_layout)

    def show_info(self, age, height):
        print('您的年龄为{}岁,身高为{}cm'.format(age, height))

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())

以上就是PyQt5中使用QSpinBox访问标题的完整使用攻略。