pyqt6 实现熊猫展览馆

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS AI 助手,专业版
简介: 本示例使用 PyQt6 实现了一个展示萌兰、福宝、金虎等大熊猫的界面。通过列表选择不同的大熊猫,界面会显示对应的大熊猫图片。代码包括界面布局、图片展示约束、信号和槽函数的连接,以及完整代码示例。

主题:利用pyqt6实现一个展示萌兰、福宝、金虎等大熊猫的展示案例。

image.gif 编辑

1 界面布局

本案例用到了列表的功能

        #定义列表
        listModel=QStringListModel()
        #列表数据
        self.list=['福宝','萌兰','金虎']
        #将列表转换列表模式
        listModel.setStringList(self.list)
        #列表展示
        listView=QListView()
        #将列表模式(数据)配置到展示对象里,就可以展示列表了
        listView.setModel(listModel)

image.gif

2 图片展示约束

        self.lb=QLabel()
        # 约束图片大小尺寸统一
        self.lb.setMaximumSize(480,340)
        self.lb.setPixmap(QPixmap("./images/xm.jpg"))
        self.lb.setScaledContents(True)

image.gif

约束之后图像大小都处于相同的宽高。

image.gif 编辑

3 信号和槽函数

#通过listView触发信号,调研clickedFunc槽函数
    listView.clicked.connect(self.clickedFunc)
    def clickedFunc(self, Index):
        # QMessageBox.information(self,'大熊猫','最爱的是:'+self.list[Index.row()])
        if self.list[Index.row()] == '福宝':
            self.lb.setPixmap(QPixmap("./images/fb.jpg"))
        elif self.list[Index.row()] == '萌兰':
            self.lb.setPixmap(QPixmap("./images/xm.jpg"))
        else:
            self.lb.setPixmap(QPixmap("./images/jh.jpg"))

image.gif

4 完整代码

# -*- coding:utf-8 -*-
"""
------------------------------------------------
File Name: 列表框.py
Description:
Author: lzq
date:2024-07-27 14:35
------------------------------------------------
"""
import sys
import PyQt6
from PyQt6.QtCore import Qt, QStringListModel
from PyQt6.QtGui import QPainter, QPixmap
from PyQt6.QtWidgets import QWidget, QTextEdit, QPushButton, QVBoxLayout, QApplication, QRadioButton, QHBoxLayout, \
    QLabel, QCheckBox, QListView, QMessageBox
class MyWidget(QWidget):
    def __init__(self, parent=None):
        super(MyWidget, self).__init__(parent)
        self.setWindowTitle("列表框QListView 测试")
        self.resize(500,350)
        listModel=QStringListModel()
        self.list=['福宝','萌兰','金虎']
        listModel.setStringList(self.list)
        listView=QListView()
        listView.setModel(listModel)
        listView.clicked.connect(self.clickedFunc)
        self.lb=QLabel()
        # 约束图片大小尺寸统一
        self.lb.setMaximumSize(480,340)
        self.lb.setPixmap(QPixmap("./images/xm.jpg"))
        self.lb.setScaledContents(True)
        layout=QVBoxLayout()
        layout.addWidget(self.lb)
        layout.addWidget(listView)
        self.setLayout(layout)
    def clickedFunc(self, Index):
        # QMessageBox.information(self,'大熊猫','最爱的是:'+self.list[Index.row()])
        if self.list[Index.row()] == '福宝':
            self.lb.setPixmap(QPixmap("./images/fb.jpg"))
        elif self.list[Index.row()] == '萌兰':
            self.lb.setPixmap(QPixmap("./images/xm.jpg"))
        else:
            self.lb.setPixmap(QPixmap("./images/jh.jpg"))
if __name__=='__main__':
    app = QApplication(sys.argv)
    w = MyWidget()
    w.show()
    sys.exit(app.exec())

image.gif

下一篇:添加熊猫功能

相关文章
|
存储 机器学习/深度学习 图形学
位图秘境:解析位图表示法及其在文件系统中的应用(一)
位图秘境:解析位图表示法及其在文件系统中的应用
408 0
|
10月前
|
人工智能 文字识别 自然语言处理
熊猫 OCR 识别软件下载,支持截图 OCR、PDF 识别、多语言翻译的免费全能工具,熊猫OCR识别
本文介绍了几款实用的图文识别软件,包括熊猫OCR、Umi-OCR和天若OCR_本地版。熊猫OCR功能强大,支持多窗口操作、AI找图找色、OCR识别等;Umi-OCR免费且高效,具备截图OCR、批量处理等功能;天若OCR界面简洁,适合快速文字识别。文章还提供了下载链接及软件特点、界面展示等内容,便于用户根据需求选择合适的工具。
1113 36
|
NoSQL Redis 数据库
12)Redis 的游标迭代器(scan)
12)Redis 的游标迭代器(scan)
482 1
|
机器学习/深度学习 人工智能 算法
【AI 场景】在自主武器中使用人工智能的伦理影响
【5月更文挑战第4天】【AI 场景】在自主武器中使用人工智能的伦理影响
【AI 场景】在自主武器中使用人工智能的伦理影响
|
XML Java API
视觉智能开放平台操作报错合集之遇到报错:Specified parameter Version is not valid,该怎么解决
在使用视觉智能开放平台时,可能会遇到各种错误和问题。虽然具体的错误代码和消息会因平台而异,但以下是一些常见错误类型及其可能的原因和解决策略的概述,包括但不限于:1. 认证错误、2. 请求参数错误、3. 资源超限、4. 图像质量问题、5. 服务不可用、6. 模型不支持的场景、7. 网络连接问题,这有助于快速定位和解决问题。
640 2
|
机器学习/深度学习 人工智能 自然语言处理
论文介绍:探索离散状态空间中的去噪扩散模型
【4月更文挑战第8天】新研究提出离散去噪扩散概率模型(D3PMs),扩展了在图像和音频生成上成功的DDPMs,专注于离散数据如文本和图像分割。D3PMs通过结构化的离散腐败过程改进生成质量,无需将数据转化为连续空间,允许嵌入领域知识。实验显示,D3PMs在字符级文本生成和CIFAR-10图像数据集上表现出色。尽管有局限性,如在某些任务上不及自回归模型,D3PMs的灵活性使其适用于多样化场景。
310 2
论文介绍:探索离散状态空间中的去噪扩散模型
|
API
【Qt 学习笔记】QWidget的windowOpacity属性 | cursor属性 | font属性
【Qt 学习笔记】QWidget的windowOpacity属性 | cursor属性 | font属性
967 0
|
机器学习/深度学习 算法
大模型开发:解释反向传播算法是如何工作的。
反向传播算法是训练神经网络的常用方法,尤其适用于多层前馈网络。它包括前向传播、计算损失、反向传播和迭代过程。首先,输入数据通过网络层层传递至输出层,计算预测值。接着,比较实际输出与期望值,计算损失。然后,从输出层开始,利用链式法则反向计算误差和权重的梯度。通过梯度下降等优化算法更新权重和偏置,以降低损失。此过程反复进行,直到损失收敛或达到预设训练轮数,优化模型性能,实现对新数据的良好泛化。
908 4
|
前端开发 JavaScript Java
计算机Java项目|基于springboot的医护人员排班系统
计算机Java项目|基于springboot的医护人员排班系统
383 0
|
存储 监控 安全
会话日志记录
会话日志记录是一种记录计算机程序或通讯工具(如 SecureCRT、Xshell 等)会话过程中的操作、消息和事件的功能。会话日志可以帮助用户回顾之前的操作,排查问题,分析系统行为等。以下是会话日志记录的使用方法:
464 4