python GUI庫圖形界面開發(fā)之PyQt5計數(shù)器控件QSpinBox詳細使用方法與實例
PyQt5計數(shù)器控件QSpinBox簡介
QSPINBox是一個計數(shù)器控件,允許用戶選擇一個整數(shù)值通過單擊向上向下或者按鍵盤上的上下鍵來增加減少當(dāng)前顯示的值,當(dāng)然用戶也可以輸入值
在默認情況下,QSpinBox的取值范圍是(0-99),每次改變的步長是1
QSpinBox類和QDoubleSpinbox類均派生自QAbstractSpinBox類,QSpinBox用于處理整數(shù)值,QDoubleSpinBox則用于處理浮點數(shù)值,他們之間的區(qū)別就是處理數(shù)據(jù)的類型不同,其他功能基本相同,QDoubleSpinBox的默認精度是兩位小數(shù),但可以通過setDecimals()來改變
QSpinBox類中的常用方法
| 方法 | 描述 |
|---|---|
| setMinimum() | 設(shè)置計數(shù)器的下界 |
| setMaximum() | 設(shè)置計數(shù)器的上界 |
| setRange() | 設(shè)置計數(shù)器的最大值,最小值,步長值 |
| setValue() | 設(shè)置計數(shù)器的當(dāng)前值 |
| Value() | 返回計數(shù)器的當(dāng)前值 |
| singleStep() | 設(shè)置計數(shù)器的步長值 |
QSpinBox的使用實例
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
class spindemo(QWidget):
def __init__(self,parent=None):
super(spindemo, self).__init__(parent)
#設(shè)置標(biāo)題與初始大小
self.setWindowTitle('SpinBox 例子')
self.resize(300,100)
#垂直布局
layout=QVBoxLayout()
#創(chuàng)建按鈕并設(shè)置居中
self.l1=QLabel('current value')
self.l1.setAlignment(Qt.AlignCenter)
layout.addWidget(self.l1)
#創(chuàng)建計數(shù)器,并添加控件,數(shù)值改變時發(fā)射信號觸發(fā)綁定事件
self.sp=QSpinBox()
layout.addWidget(self.sp)
self.sp.valueChanged.connect(self.Valuechange)
self.setLayout(layout)
def Valuechange(self):
#顯示當(dāng)前計數(shù)器地數(shù)值
self.l1.setText('current value:'+str(self.sp.value()))
if __name__ == '__main__':
app=QApplication(sys.argv)
ex=spindemo()
ex.show()
sys.exit(app.exec_())
運行效果如圖

QSpinBox代碼分析:
在這個例子中,有一個標(biāo)簽和計數(shù)器放置在一個垂直布局管理器中,并把這個垂直布局管理器放置在窗口中,將計數(shù)器的valueChanged信號連接到槽函數(shù)valuechange(),其核心代碼是
self.sp.valueChanged.connect(self.Valuechange)
valuechange()函數(shù)把計數(shù)器的當(dāng)前值設(shè)置到標(biāo)簽文本中
self.l1.setText('current value:'+str(self.sp.value()))
本文主要講解了PyQt5計數(shù)器控件QSpinBox詳細使用方法與實例,更多關(guān)于PyQt5控件知識請查看下面的相關(guān)鏈接
相關(guān)文章
python使用pyshark庫捕獲數(shù)據(jù)包的示例詳解
PyShark是一個基于Python的網(wǎng)絡(luò)數(shù)據(jù)包分析工具庫,它允許用戶捕獲、解碼和分析實時網(wǎng)絡(luò)流量,特別是Wi-Fi和TCP/IP協(xié)議的數(shù)據(jù),所以本文給大家介紹了python使用pyshark庫捕獲數(shù)據(jù)包的示例,需要的朋友可以參考下2024-08-08
python通過shutil實現(xiàn)快速文件復(fù)制的方法
這篇文章主要介紹了python通過shutil實現(xiàn)快速文件復(fù)制的方法,涉及Python中shutil模塊的使用技巧,需要的朋友可以參考下2015-03-03
Python利用AutoGrad實現(xiàn)自動計算函數(shù)斜率和梯度
AutoGrad 是一個老少皆宜的 Python 梯度計算模塊。對于大學(xué)生、機器學(xué)習(xí)愛好者而言,你只需要傳遞給它Numpy這樣的標(biāo)準(zhǔn)數(shù)據(jù)庫下編寫的損失函數(shù),它就可以自動計算損失函數(shù)的導(dǎo)數(shù)(梯度)。本文將從普通斜率計算開始,介紹到如何只使用它來實現(xiàn)一個邏輯回歸模型2022-07-07
解鎖Python中神器vars內(nèi)置函數(shù)的使用
vars()函數(shù)是一個內(nèi)置函數(shù),用于返回對象的__字典__,其中包含對象的__屬性__,本文主要為大家詳細介紹了vars()函數(shù)的具體使用,需要的小伙伴可以了解下2023-11-11
Python使用logging模塊實現(xiàn)打印log到指定文件的方法
這篇文章主要介紹了Python使用logging模塊實現(xiàn)打印log到指定文件的方法,結(jié)合實例形式分析了Python logging模塊的原理及相關(guān)日志輸出操作技巧,需要的朋友可以參考下2018-09-09
Python實現(xiàn)合并多個Excel文件中的指定sheet
這篇文章主要為大家介紹了一個用于合并多個Excel文件中指定sheet的Python代碼,這個功能可以方便地整理和分析數(shù)據(jù),文中的示例代碼簡潔易懂,需要的可以參考下2023-10-10

