import sys
from PyQt5.QtWidgets import QApplication,QWidget,QSlider,QPushButton,QHBoxLayout
qAp = QApplication(sys.argv)
natang = QWidget()
hbl = QHBoxLayout()
natang.setLayout(hbl)
tualuean = QSlider() # สร้างตัวเลื่อนปรับค่า
hbl.addWidget(tualuean)
tualuean.setRange(1000,2000) # ตั้งขอบเขต
tualuean.setValue(1800) # ตั้งค่าตั้งต้น
pumkha = QPushButton() # สร้างปุ่มกด
hbl.addWidget(pumkha)
pumkha.setFixedSize(90,60)
# เมื่อกดปุ่มให้แสดงค่าตัวเลขของตัวเลื่อนนั้นในปุ่ม
def sadaengkha():
pumkha.setText(str(tualuean.value()))
pumkha.clicked.connect(sadaengkha)
sadaengkha()
natang.show()
qAp.exec_()
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QSlider,QLabel,QPushButton,QHBoxLayout
qAp = QApplication(sys.argv)
natang = QWidget()
hbl = QHBoxLayout()
natang.setLayout(hbl)
pumkha = QPushButton('-10')
hbl.addWidget(pumkha)
pumkha.setFixedSize(50,60)
# ตั้งให้เมื่อกดปุ่มแล้วค่าของตัวเลื่อนจะกลายเป็น 0
pumkha.clicked.connect(lambda: tualuean.setValue(0))
dukha = QLabel('-10')
hbl.addWidget(dukha)
tualuean = QSlider()
hbl.addWidget(tualuean)
tualuean.setRange(-40,40) # ตั้งขอบเขตค่าของตัวเลื่อน
tualuean.setValue(-10) # ตั้งค่าเริ่มต้นที่ -10
# ตั้งให้ปรับค่าใน QLabel เมื่อมีการเลื่อนตัวเลื่อน
tualuean.sliderMoved.connect(lambda: dukha.setText(str(tualuean.value())))
# ตั้งให้ปรับค่าใน QPushButton เมื่อมีการเปลี่ยนแปลงค่าของตัวเลื่อนไม่ว่ากรณีใดๆ
tualuean.valueChanged.connect(lambda: pumkha.setText(str(tualuean.value())))
natang.show()
qAp.exec_()
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QSlider,QLabel,QVBoxLayout
from PyQt5.QtCore import Qt
qAp = QApplication(sys.argv)
natang = QWidget()
vbl = QVBoxLayout()
natang.setLayout(vbl)
tualuean = QSlider()
vbl.addWidget(tualuean)
tualuean.setRange(200000,320000)
tualuean.setValue(225000)
tualuean.setOrientation(Qt.Horizontal) # ตั้งให้อยู่ในแนวนอน
def pliankha():
dukha.setText(str(tualuean.value()))
tualuean.valueChanged.connect(pliankha)
dukha = QLabel()
vbl.addWidget(dukha)
dukha.setAlignment(Qt.AlignCenter)
pliankha()
natang.show()
qAp.exec_()
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QSlider,QFrame
from PyQt5.QtCore import Qt
qAp = QApplication(sys.argv)
natang = QWidget()
def kot(): # ฟังก์ชันที่ทำเมื่อกดตัวเลื่อน
global roem
roem = tualuean.value() # ให้บันทึกค่าเมื่อกดไว้
siliam.move(0,50)
siliam.setFixedWidth(300)
def ploi(): # ฟังก์ชันที่ทำเมื่อปล่อยตัวเลื่อน
chop = tualuean.value() # ค่าเมื่อปล่อย
siliam.setFixedWidth(abs(chop-roem)) # ตั้งความยาวให้เป็นค่าค่าระหว่างจุดที่ปล่อยกับกับจุดที่กด
if(chop>roem): # ถ้าจุดปล่อยอยู่ทางขวาของจุดกด
siliam.move(roem,40)
siliam.setStyleSheet('background-color: #3a8990')
else: # ถ้าจุดกดอยู่ทางขวาของจุดปล่อย
siliam.move(chop,40)
siliam.setStyleSheet('background-color: #b9aa80')
tualuean = QSlider(natang)
tualuean.setOrientation(Qt.Horizontal) # จัดวางในแนวนอน
tualuean.setRange(0,300) # ตั้งขอบเขตค่าของตัวเลื่อนให้เท่ากับความยาวของกล่อง
tualuean.setGeometry(0,0,300,40)
tualuean.sliderPressed.connect(kot) # เมื่อกด
tualuean.sliderReleased.connect(ploi) # เมื่อปล่อย
siliam = QFrame(natang) # สร้างกล่อง
siliam.setFrameShape(QFrame.Box) # ให้ขอบ
siliam.setLineWidth(3) # ความหนาขอบ
siliam.setFrameShadow(QFrame.Raised) # ให้มีเงา
siliam.setGeometry(0,40,300,40)
natang.show()
qAp.exec_()
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QScrollBar,QLabel,QFrame,QHBoxLayout
from PyQt5.QtCore import Qt
qAp = QApplication(sys.argv)
natang = QWidget()
hbl = QHBoxLayout()
natang.setLayout(hbl)
thaepluean = QScrollBar() # สร้างแถบเลื่อน
hbl.addWidget(thaepluean)
thaepluean.setStyleSheet('background-color: #d0fbca') # เปลี่ยนสี
thaepluean.setFixedHeight(120) # ความสูง
thaepluean.setRange(-10,200) # ขอบเขตค่าสูงสุดและต่ำสุด
thaepluean.setValue(10) # ค่าตอนเริ่มต้น
# ฟังก์ชันที่ให้ทำงานเมื่อมีการเปลี่ยนค่าในแถบเลื่อน ให้แสดงค่าเป็นตัวเลข
def pliankha():
dukha.setText(str(thaepluean.value()))
thaepluean.valueChanged.connect(pliankha)
dukha = QLabel() # ตัวเลขแสดงค่าในแถบเลื่อน
hbl.addWidget(dukha)
dukha.setAlignment(Qt.AlignCenter) # จัดให้วางอยู่ตรงกลาง
dukha.setFrameShape(QFrame.Box) # ใส่กรอบ
dukha.setFixedSize(40,120)
pliankha()
natang.show()
qAp.exec_()
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QScrollBar,QLabel,QVBoxLayout
from PyQt5.QtCore import Qt
qAp = QApplication(sys.argv)
natang = QWidget()
vbl = QVBoxLayout()
natang.setLayout(vbl)
thaepluean = QScrollBar() # สร้างแถบเลื่อน
vbl.addWidget(thaepluean)
thaepluean.setStyleSheet('background-color: #f4f4bb') # ปรับสี
thaepluean.setFixedWidth(190) # ความสูง
thaepluean.setRange(-200,200) # ขอบเขต
thaepluean.setValue(100) # ค่าตอนเริ่มต้น
thaepluean.setSingleStep(4) # เมื่อกดปุ่มลูกศร เลื่อน 4
thaepluean.setPageStep(40) # เมื่อกดที่ว่าง เลื่อน 40
thaepluean.setOrientation(Qt.Horizontal) # จัดวางในแนวนอน
# ให้เปลี่ยนค่าตัวเลขที่แสดงอยู่ด้านล่าง เมื่อมีการเปลี่ยนค่าในแถบเลื่อน
def pliankha():
dukha.setText(str(thaepluean.value()))
thaepluean.valueChanged.connect(pliankha)
dukha = QLabel()
vbl.addWidget(dukha)
dukha.setAlignment(Qt.AlignCenter)
pliankha()
natang.show()
qAp.exec_()
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QDial,QLabel,QVBoxLayout
from PyQt5.QtCore import Qt
qAp = QApplication(sys.argv)
natang = QWidget()
vbl = QVBoxLayout()
natang.setLayout(vbl)
phangmun = QDial() # สร้างแผงหมุน
vbl.addWidget(phangmun)
phangmun.setRange(-7,7) # ตั้งขอบเขตของค่า
phangmun.setValue(7) # ตั้งค่าเริ่มต้น
phangmun.setStyleSheet('background-color: #b8def4') # ทำให้เป็นสีฟ้า
def pliankha():
dukha.setText(str(phangmun.value()))
phangmun.valueChanged.connect(pliankha)
dukha = QLabel()
vbl.addWidget(dukha)
dukha.setAlignment(Qt.AlignCenter) # ตั้งให้ตัวเลขบอกค่าอยู่ตรงกลาง
pliankha()
natang.show()
qAp.exec_()
ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ