python GUI庫圖形界面開發之PyQt5滾動條控件QScrollBar詳細使用方法與實例
可以看到,前面介紹的幾個窗口控件的共同點是新建一些窗口來裝載更多的控件,而QScrollBar提供了另一種思路:這個控件提供水平的或垂直的滾動條,這樣可以擴大當前窗口的有效裝載面積,從而裝載更多的控件
QScrollBar類中常用的信號 信號 含義 valueChanged 當滑動條的值改變發射此信號 sliderMoved 當用戶拖動滑塊時發射此信號 QScrollBar的使用實例import sysfrom 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() #創建標簽以及顯示文本,設置字體類型和字號大小 self.l1=QLabel(’拖動滑塊改變顏色’) self.l1.setFont(QFont(’Arial’,16)) #添加到布局中 HBox.addWidget(self.l1) #創建滑塊,設置最大值,滑動信號關聯到槽函數 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) #初始化位置以及初始窗口大小,設置整體布局方式和標題 self.setGeometry(300,300,300,200) self.setWindowTitle(’QScrollBar例子’) self.setLayout(HBox) def sliderval(self): #輸出當前三個滑塊位置所代表的值 print(self.s1.value(),self.s2.value(),self.s3.value()) #實例化調色板對象,設置顏色為三個滑塊的值 palette=QPalette() c=QColor(self.s1.value(),self.s2.value(),self.s3.value()) palette.setColor(QPalette.Foreground,c) #設置標簽的調色板,加載屬性 self.l1.setPalette(palette)if __name__ == ’__main__’: app=QApplication(sys.argv) demo=Example() demo.show() sys.exit(app.exec_())
運行效果圖如下
代碼解析
在這個例子中,設置了三個滑動條來控制標簽中顯示的文字的字體顏色的RGB值
當滑塊滑動時,將sliderMoved信號與槽函數連接起來
self.s3.sliderMoved.connect(self.sliderval)
本文主要講解了PyQt5滾動條控件QScrollBar詳細使用方法與實例,更多關于PyQt5控件使用知識請查看下面的相關鏈接
相關文章: