pyqt6 实现熊猫展览馆

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 本示例使用 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

下一篇:添加熊猫功能

相关文章
|
9月前
|
搜索推荐 Python
用Python给大家画个小月饼祝福
本文分享了关于中秋的主题,指出生活不仅是赶路,更要感受沿途的美好。尽管人们常想提前躲避拥堵,但假期出行依然人多。文中未提供文献分享,而是祝大家中秋国庆双节快乐,并附上了一段Python代码,用于绘制月饼图形,鼓励读者自定义设计。最后提到代码相对简单,适合个性化创作。
60 0
|
3月前
pyqt6 添加熊猫案例
本文介绍了如何实现列表的增加、删除和排序功能。通过使用 PyQt6,创建了一个包含输入框和按钮的界面,实现了列表项的动态管理,并提供了详细的代码示例。
49 2
|
3月前
|
JSON 开发工具 git
基于Python和pygame的植物大战僵尸游戏设计源码
本项目是基于Python和pygame开发的植物大战僵尸游戏,包含125个文件,如PNG图像、Python源码等,提供丰富的游戏开发学习素材。游戏设计源码可从提供的链接下载。关键词:Python游戏开发、pygame、植物大战僵尸、源码分享。
|
6月前
|
Java
05 Java代码实现一个小游戏(剪刀石头布)和一个简易的万年历
05 Java代码实现一个小游戏(剪刀石头布)和一个简易的万年历
114 2
|
9月前
|
定位技术 Python
用Python Tkinter打造的精彩连连看小游戏【附源码】
用Python Tkinter打造的精彩连连看小游戏【附源码】
198 0
|
Python
基于Python+Pygame实现一个滑雪小游戏
基于Python+Pygame实现一个滑雪小游戏
117 0
|
小程序 程序员 Python
520表白小程序设计Python代码详解(PyQt5界面,B站动漫风)
520表白小程序设计Python代码详解(PyQt5界面,B站动漫风)
373 0
|
Python
Python实现坦克大战
前段时间,也就是国庆节。在寝室闲来无事,用pygame写了一个小游戏,就是标题写的《坦克大战》。这个游戏写了两个版本,第一个版本是按照书上的思想来写的,发现写到后面的时候代码太乱了。于是我又从头开始,用比较合理的面向对象思想重新写了一个版本。说比较合理也只是符合我自己的思想,所以难免会有一些不合理的设计,水平有限,希望各位读者能够包涵一下。
277 0
100行Python代码,完成一个打地鼠小游戏!
最近在学习使用 Python 来完成一些小游戏,使用到的有 Pygame 和 PyQt5 等,在前面,已经通过 Pygame 完成来一个小小的 Mp3 工具,Mp3 小工具 最近,又学习了下 PyQt5,根据网上前人的代码,整理了一个打地鼠的小游戏,今天也分享给大家,一起学习!
100行Python代码,完成一个打地鼠小游戏!