本篇文章給大家分享的是有關(guān)怎么在python中使用QSlider控件,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),巢湖網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:巢湖等地區(qū)。巢湖做網(wǎng)站價(jià)格咨詢:13518219792PyQt5滑塊條控件QSlider介紹QSlider控件提供一個(gè)垂直或者水平的滑動(dòng)條,滑動(dòng)條是一個(gè)用于控制有界值典型的控件,它允許用戶沿水平或者垂直方向在某一范圍內(nèi)移動(dòng)滑塊,并將滑塊所在的位置轉(zhuǎn)換為一個(gè)合法范圍內(nèi)的整數(shù)值,有時(shí)候這中方式比輸入數(shù)字或者使用SpinBox(計(jì)數(shù)器·)更加自然,在槽函數(shù)中對(duì)滑塊所在位置的處理相當(dāng)于從整數(shù)之間的最小值和最高值進(jìn)行取值
一個(gè)滑塊條控件可以以垂直或者水平的方式顯示,在構(gòu)造函數(shù)中進(jìn)行設(shè)置
self.sp=QSlider(Qt.Horizontal) self.sp=Qslider(Qt.Vertical)QSlider類中常用的方法如表所示
方法 | 描述 |
---|---|
setMinimum() | 設(shè)置滑動(dòng)條控件的最小值 |
setMaximum() | 設(shè)置滑動(dòng)條控件的大值 |
setSingleStep() | 設(shè)置滑動(dòng)條控件的步長(zhǎng) |
setValue() | 設(shè)置滑動(dòng)條控件的值 |
value() | 獲取滑動(dòng)條控件的值 |
setTickInterval() | 設(shè)置刻度間隔 |
setTickPosition() | 設(shè)置刻度標(biāo)記的位置,可以輸入一個(gè)枚舉值,這個(gè)枚舉值指定刻度線想當(dāng)與滑塊和用戶操作的位置,以下是可以輸入的枚舉值: |
QSlider.NoTicks:不繪制任何刻度線 | |
QSlider.TicksBothSides:在滑塊的兩側(cè)繪制刻度線 | |
QSlider.TicksAbove:在滑塊的(水平)上方繪制刻度線 | |
QSlider.TicksBelow:在滑塊的(水平)下方繪制刻度線 | |
QSlider.TicksLeft:在滑塊的(垂直)左側(cè)繪制刻度線 | |
QSlider.TicksRight,在滑塊的(垂直)右側(cè)繪制刻度線 |
信號(hào) | 描述 |
---|---|
vlaueChanged | 當(dāng)滑塊的值發(fā)生改變時(shí)發(fā)射此信號(hào),此信號(hào)是最常用的 |
sliderPressed | 當(dāng)用戶按下滑塊時(shí)發(fā)射此信號(hào) |
sliderMoved | 當(dāng)用戶拖動(dòng)滑塊時(shí)發(fā)射此信號(hào) |
slierReleased | 當(dāng)用戶釋放滑塊時(shí)發(fā)射此信號(hào) |
import sys from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtGui import * class SliderDemo(QWidget): def __init__(self,parent=None): super(SliderDemo, self).__init__(parent) #設(shè)置標(biāo)題與初始大小 self.setWindowTitle('QSlider例子') self.resize(300,100) #垂直布局 layout=QVBoxLayout() #創(chuàng)建標(biāo)簽,居中 self.l1=QLabel('Hello PyQt5') self.l1.setAlignment(Qt.AlignCenter) layout.addWidget(self.l1) #創(chuàng)建水平方向滑動(dòng)條 self.s1=QSlider(Qt.Horizontal) ##設(shè)置最小值 self.s1.setMinimum(10) #設(shè)置大值 self.s1.setMaximum(50) #步長(zhǎng) self.s1.setSingleStep(3) #設(shè)置當(dāng)前值 self.s1.setValue(20) #刻度位置,刻度下方 self.s1.setTickPosition(QSlider.TicksBelow) #設(shè)置刻度間距 self.s1.setTickInterval(5) layout.addWidget(self.s1) #設(shè)置連接信號(hào)槽函數(shù) self.s1.valueChanged.connect(self.valuechange) self.setLayout(layout) def valuechange(self): #輸出當(dāng)前地刻度值,利用刻度值來(lái)調(diào)節(jié)字體大小 print('current slider value=%s'%self.s1.value()) size=self.s1.value() self.l1.setFont(QFont('Arial',size)) if __name__ == '__main__': app=QApplication(sys.argv) demo=SliderDemo() demo.show() sys.exit(app.exec_())
運(yùn)行效果圖如下
代碼分析:
在這個(gè)例子中,將一個(gè)標(biāo)簽和一個(gè)水平滑動(dòng)條放置在一個(gè)垂直布局管理器中,將滑塊的valueChanged信號(hào)連接到valuechange()函數(shù)
self.s1.valueChanged.connect(self.valuechange)
槽函數(shù)valuechange()讀取滑塊的當(dāng)前值,并將其作為字號(hào)的大小
size=self.s1.value() self.l1.setFont(QFont('Arial',size))
使用setTickInterval(5)設(shè)置刻度間隔后,在繪制刻度時(shí)就會(huì)有幾個(gè)刻度點(diǎn),刻度點(diǎn)數(shù)=(大值-最小值)/刻度間隔+1
self.s1.setMinimum(10) self.s1.setMaximum(50) self.s1.setTickInterval(5)
以上就是怎么在python中使用QSlider控件,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞標(biāo)題:怎么在python中使用QSlider控件-創(chuàng)新互聯(lián)
瀏覽路徑:http://chinadenli.net/article14/dhjjge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站改版、ChatGPT、靜態(tài)網(wǎng)站、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容