0
点赞
收藏
分享

微信扫一扫

Golang | Leetcode Golang题解之第350题两个数组的交集II

自信的姐姐 2024-08-21 阅读 27

系列文章目录

Python 界面学习:PYQT界面点击按钮随机变色


文章目录


一、项目需求

写一个pyqt界面,要求界面有一个按钮,每次点击这个按钮,就会生成一个10以内的随机数,并且每种水技术对应一种颜色,当随机数出现的时候,界面底色要变成对应的颜色,同时要求随机数会在界面中展示出来,并且按钮和数字的颜色不会改变



二、源代码

import sys
import random
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QColor

class App(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('随机数颜色变化展示')

        # 设置窗口的初始大小
        self.setGeometry(100, 100, 350, 250)

        # 创建按钮并设置点击事件
        self.button = QPushButton('生成随机数', self)
        self.button.clicked.connect(self.changeColor)
        self.button.setGeometry(100, 50, 150, 40)  # 设置按钮的位置和大小

        # 创建标签用于显示随机数
        self.label = QLabel('点击按钮生成随机数', self)
        self.label.setGeometry(100, 110, 150, 30)  # 设置标签的位置和大小
        self.label.setAlignment(Qt.AlignCenter)  # 文本居中

        # 设置按钮和标签的初始颜色
        self.button.setStyleSheet("color: white; background-color: black;")
        self.label.setStyleSheet("color: black;")

    def changeColor(self):
        # 生成随机数
        num = random.randint(0, 9)
        # 根据随机数选择颜色
        color_name = self.getColor(num)
        # 设置窗口的背景颜色
        self.setStyleSheet(f"background-color: {color_name};")
        # 更新标签显示的随机数
        self.label.setText(f'随机数: {num}')

    def getColor(self, num):
        # 定义颜色映射
        colors = {
            0: 'red',
            1: 'green',
            2: 'blue',
            3: 'yellow',
            4: 'magenta',
            5: 'darkred',
            6: 'darkgreen',
            7: 'darkblue',
            8: 'darkmagenta',
            9: 'cyan'
        }
        return colors.get(num, 'lightgray')  # 默认颜色为浅灰色

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    ex.show()
    sys.exit(app.exec_())




三、代码分析

3.1 导入模块:

3.2 定义App类:

3.3 构造函数:

3.4 初始化用户界面:

3.5 设置窗口属性:

3.6 创建按钮:

3.7 创建标签:

3.8 设置按钮和标签的样式:

3.9 changeColor方法:

3.10 getColor方法:

3.11 主程序:


四、效果展示

初始化
随机数3
随机数9


总结

以上代码实现了一个简单的GUI应用程序,用户可以通过点击按钮生成一个随机数,并在界面上显示这个随机数,同时窗口的背景颜色会根据这个随机数改变。

举报

相关推荐

0 条评论