python GUI庫(kù)圖形界面開發(fā)之PyQt5滾動(dòng)條控件QScrollBar詳細(xì)使用方法與實(shí)例
PyQt5滾動(dòng)條控件QScrollBar簡(jiǎn)介
可以看到,前面介紹的幾個(gè)窗口控件的共同點(diǎn)是新建一些窗口來裝載更多的控件,而QScrollBar提供了另一種思路:這個(gè)控件提供水平的或垂直的滾動(dòng)條,這樣可以擴(kuò)大當(dāng)前窗口的有效裝載面積,從而裝載更多的控件
QScrollBar類中常用的信號(hào)
| 信號(hào) | 含義 |
|---|---|
| valueChanged | 當(dāng)滑動(dòng)條的值改變發(fā)射此信號(hào) |
| sliderMoved | 當(dāng)用戶拖動(dòng)滑塊時(shí)發(fā)射此信號(hào) |
QScrollBar的使用實(shí)例
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
class Example(QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
#水平布局
HBox=QHBoxLayout()
#創(chuàng)建標(biāo)簽以及顯示文本,設(shè)置字體類型和字號(hào)大小
self.l1=QLabel('拖動(dòng)滑塊改變顏色')
self.l1.setFont(QFont('Arial',16))
#添加到布局中
HBox.addWidget(self.l1)
#創(chuàng)建滑塊,設(shè)置最大值,滑動(dòng)信號(hào)關(guān)聯(lián)到槽函數(shù)
self.s1=QScrollBar()
self.s1.setMaximum(255)
self.s1.sliderMoved.connect(self.sliderval)
self.s2=QScrollBar()
self.s2.setMaximum(255)
self.s2.sliderMoved.connect(self.sliderval)
self.s3=QScrollBar()
self.s3.setMaximum(255)
self.s3.sliderMoved.connect(self.sliderval)
#添加部件到布局中
HBox.addWidget(self.s1)
HBox.addWidget(self.s2)
HBox.addWidget(self.s3)
#初始化位置以及初始窗口大小,設(shè)置整體布局方式和標(biāo)題
self.setGeometry(300,300,300,200)
self.setWindowTitle('QScrollBar例子')
self.setLayout(HBox)
def sliderval(self):
#輸出當(dāng)前三個(gè)滑塊位置所代表的值
print(self.s1.value(),self.s2.value(),self.s3.value())
#實(shí)例化調(diào)色板對(duì)象,設(shè)置顏色為三個(gè)滑塊的值
palette=QPalette()
c=QColor(self.s1.value(),self.s2.value(),self.s3.value())
palette.setColor(QPalette.Foreground,c)
#設(shè)置標(biāo)簽的調(diào)色板,加載屬性
self.l1.setPalette(palette)
if __name__ == '__main__':
app=QApplication(sys.argv)
demo=Example()
demo.show()
sys.exit(app.exec_())
運(yùn)行效果圖如下

代碼解析
在這個(gè)例子中,設(shè)置了三個(gè)滑動(dòng)條來控制標(biāo)簽中顯示的文字的字體顏色的RGB值
當(dāng)滑塊滑動(dòng)時(shí),將sliderMoved信號(hào)與槽函數(shù)連接起來
self.s3.sliderMoved.connect(self.sliderval)
本文主要講解了PyQt5滾動(dòng)條控件QScrollBar詳細(xì)使用方法與實(shí)例,更多關(guān)于PyQt5控件使用知識(shí)請(qǐng)查看下面的相關(guān)鏈接
相關(guān)文章
Python Web程序部署到Ubuntu服務(wù)器上的方法
在本文記錄了我在Ubuntu中部署Flask Web站點(diǎn)的過程, 其中包括用戶創(chuàng)建、代碼獲取、Python3環(huán)境的安裝、虛擬環(huán)境設(shè)置、uWSGI啟動(dòng)程序設(shè)置,并將Nginx作為前端反向代理,需要的朋友參考下吧2018-02-02
python神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)利用PyTorch進(jìn)行回歸運(yùn)算
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)利用PyTorch進(jìn)行回歸運(yùn)算的實(shí)現(xiàn)代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
Python 工具類實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳功能詳解
用python進(jìn)行大文件下載的時(shí)候,一旦出現(xiàn)網(wǎng)絡(luò)波動(dòng)問題,導(dǎo)致文件下載到一半。如果將下載不完全的文件刪掉,那么又需要從頭開始,如果連續(xù)網(wǎng)絡(luò)波動(dòng),是不是要頭禿了。本文提供斷點(diǎn)續(xù)傳下載工具方法,希望可以幫助到你2021-10-10
基于Python實(shí)現(xiàn)開心消消樂小游戲的示例代碼
這篇文章主要是帶著大家自制一款開心消消樂,還原度超高哦~還在等什么動(dòng)動(dòng)手就能擁有屬于自己的”消消樂“小游戲呢,趕快學(xué)起來吧2022-05-05
聊聊Python pandas 中l(wèi)oc函數(shù)的使用,及跟iloc的區(qū)別說明
這篇文章主要介紹了聊聊Python pandas 中l(wèi)oc函數(shù)的使用,及跟iloc的區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03

