1 Star 0 Fork 0

linglingier / pyqt6

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
23.py 2.00 KB
一键复制 编辑 原始数据 按行查看 历史
linglingier 提交于 2023-10-17 21:34 . first
# ! /usr/bin/python
# -*- coding: utf-8 -*-
# author:凌
# datetime:2023/10/17 15:54
# software:PyCharm
import sys
from PyQt6.QtWidgets import QApplication, QMainWindow, QPushButton, QFrame
from PyQt6.QtGui import QGuiApplication, QColor
class App(QMainWindow):
def __init__(self):
super().__init__()
self.square = None
self.color = None
self.initUI()
def initUI(self):
self.setWindowTitle("PyQt6 切换按钮")
self.color = QColor(0, 0, 0)
redb = QPushButton("红色", self)
redb.setCheckable(True)
redb.move(10, 10)
redb.clicked[bool].connect(self.setColor)
greenb = QPushButton("绿色", self)
greenb.setCheckable(True)
greenb.move(10, 60)
greenb.clicked[bool].connect(self.setColor)
blueb = QPushButton("蓝色", self)
blueb.setCheckable(True)
blueb.move(10, 110)
blueb.clicked[bool].connect(self.setColor)
self.square = QFrame(self)
self.square.setGeometry(150, 20, 100, 100)
self.square.setStyleSheet("QWidget { background-color: %s}" % self.color.name())
self.setGeometry(100, 100, 400, 300)
self.center()
def setColor(self, pressed):
source = self.sender()
if pressed:
val = 255
else:
val = 0
if source.text() == "红色":
self.color.setRed(val)
elif source.text() == "绿色":
self.color.setGreen(val)
else:
self.color.setBlue(val)
self.square.setStyleSheet("QWidget { background-color: %s}" % self.color.name())
def center(self):
qr = self.frameGeometry()
cp = QGuiApplication.primaryScreen().availableGeometry().center()
qr.moveCenter(cp)
self.move(qr.topLeft())
if __name__ == "__main__":
app = QApplication(sys.argv)
cls_app = App()
cls_app.show()
sys.exit(app.exec())
1
https://gitee.com/lingling2tu/pyqt6.git
git@gitee.com:lingling2tu/pyqt6.git
lingling2tu
pyqt6
pyqt6
master

搜索帮助