温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

PyQt5怎么实现颜色对话框

发布时间:2023-01-17 10:21:05 来源:亿速云 阅读:119 作者:iii 栏目:开发技术

这篇文章主要介绍了PyQt5怎么实现颜色对话框的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇PyQt5怎么实现颜色对话框文章都会有所收获,下面我们一起来看看吧。

颜色对话框

通过颜色对话框(QColorDialog)选择颜色,然后给给控件设置对应的颜色。

格式:

color, ok = QColorDialog.getColor()

示例:

# _*_ coding:utf-8 _*_
 
import sys
from PyQt6.QtWidgets import QApplication
from PyQt6.QtWidgets import QWidget
from PyQt6.QtWidgets import QMainWindow
from PyQt6.QtWidgets import QColorDialog
from PyQt6.QtWidgets import QPushButton
from PyQt6.QtWidgets import QLabel
from PyQt6.QtWidgets import QVBoxLayout
from PyQt6.QtGui import QPalette
from PyQt6.QtCore import Qt
 
 
class QColorDialogDemo(QMainWindow):
    """字体对话框"""
 
    def __init__(self):
        """构造函数"""
 
        super(QColorDialogDemo, self).__init__()
        self.init_ui()
 
    def init_ui(self):
        self.setWindowTitle("QColorDialogDemo")
        self.resize(300, 200)
 
        # 获取中央控件
        self.centralwidget = QWidget()
        self.setCentralWidget(self.centralwidget)
 
        # 设置布局
        self.vboxlayout = QVBoxLayout()
        self.vboxlayout.setAlignment(Qt.AlignmentFlag.AlignCenter)
        self.centralwidget.setLayout(self.vboxlayout)
 
        # 添加标签和按钮
        self.label = QLabel("字体颜色展示")
        self.vboxlayout.addWidget(self.label)
        self.label_fonttype = QLabel("颜色:")
        self.vboxlayout.addWidget(self.label_fonttype)
        self.btn_showcolordialog = QPushButton("选择字体颜色")
        self.btn_showcolordialog.clicked.connect(self.getcolor)
        self.vboxlayout.addWidget(self.btn_showcolordialog)
        self.btn_showcolordialog_background = QPushButton("选择背景颜色")
        self.btn_showcolordialog_background.clicked.connect(
            self.getcolor_background)
        self.vboxlayout.addWidget(self.btn_showcolordialog_background)
 
    def getcolor(self):
        """获取颜色"""
        color = QColorDialog.getColor()
        
        palette = QPalette()
        palette.setColor(QPalette.ColorRole.WindowText, color)
        self.label.setPalette(palette)
        self.label_fonttype.setText("""颜色:{0:x}""".format(color.rgb()))
 
    def getcolor_background(self):
        """获取背景颜色"""
        color = QColorDialog.getColor()
 
        palette = QPalette()
        palette.setColor(QPalette.ColorRole.Window, color)
        self.label.setAutoFillBackground(True)
        self.label.setPalette(palette)
        self.label_fonttype.setText("""颜色:{0:x}""".format(color.rgb()))
 
if __name__ == "__main__":
    """主程序运行"""
 
    app = QApplication(sys.argv)
    main = QColorDialogDemo()
    main.show()
    sys.exit(app.exec())

结果:

界面:

PyQt5怎么实现颜色对话框

调色板:

PyQt5怎么实现颜色对话框

修改颜色字体:

PyQt5怎么实现颜色对话框

修改背景颜色:

PyQt5怎么实现颜色对话框

关于“PyQt5怎么实现颜色对话框”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“PyQt5怎么实现颜色对话框”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI