【PyGame/PyQy5】get-start 快速入门

news2025/6/27 11:06:45

1.windows、linux,mac 安装python3

2.PC系统安装pygame, 指令:pip install pygame

3. 保存如下文件: test_game.py

4.PC上运行 python test_game.py 

import pygame
 
# 初始化Pygame
pygame.init()
 
# 创建游戏窗口
window = pygame.display.set_mode((800, 600))
pygame.display.set_caption("Pygame测试")

font = pygame.font.SysFont("Arial", 36)


 
# 游戏循环
running = True
count = 0
index = 0
while running:

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
 
    # 绘制背景
    count+=1
    if(count>1000):
        index = (index+1)%3
        count = 0

    if(index==0):
        window.fill((255,0,0))

    if(index==1):
        window.fill((0,255,0))

    if(index==2):
        window.fill((0,0,255))                
    
    print("loop_count=",count)
    text = font.render('hello pygame:'+str(count), True, (0, 0, 0), (255, 255, 255))
    window.blit(text, (0, 0))
    # 刷新窗口
    pygame.display.update()
 
# 退出游戏
pygame.quit()
print('=====pygame is quit!=====')

5.安装 pip3 install PyQt5==5.15.2

6. 保存如下文件[可用qtcreator辅助布局]: test_qt5.py

7.PC上运行 python test_qt5.py 

import sys
from PyQt5.QtWidgets import QApplication, QWidget,QPushButton

def btn1_clicked():
    print("button_1 clicked!")

def btn2_clicked():
    print("button_2 clicked!")

if __name__ == "__main__":
    # 创建QApplication类的实例,并传入命令行参数
    app = QApplication(sys.argv)
    # 创建QWidget类的实例,相当于创建一个窗口
    w = QWidget()
    # 调整窗口的大小(宽,高)
    w.resize(320, 240)
    # 设置widget窗口背景颜色
    w.setStyleSheet("background-color:#00ee66;")

    # 移动窗口(显示的相对位置,左,上)
    w.move(100, 200)
    # 设置窗口的标题
    w.setWindowTitle("pyqt5 title")
    #创建按键
    btn1 = QPushButton("Fist_Button", w)
    btn1.setToolTip("this Btn1 tips") #button tips text
    btn1.move(20, 50)
    btn1.clicked.connect(btn1_clicked)

    btn2 = QPushButton("Second_Button", w)
    btn2.setToolTip("this Btn2 tips") #button tips text
    btn2.move(120, 50)    
    btn2.clicked.connect(btn2_clicked)

    # 显示窗口
    w.show()
    # 进入循环的主循环,并通过exit函数确保主循环安全结束
    sys.exit(app.exec_())

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/975408.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAP FI 之定义利润中心(Profit Center)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 SAP中的利润中心是SAP Controlling内部控制的一个组织单元。它帮助组织管理成本和收…

基于snat+dnat发布内网K8S及Jenkins+gitlab+Harbor模拟CI/CD的综合项目

目录 项目名称 项目架构图 项目环境 项目概述 项目准备 项目步骤 一、修改每台主机的ip地址,同时设置永久关闭防火墙和selinux,修改好主机名,在firewalld服务器上开启路由功能并配置snat策略。 1. 在firewalld服务器上配置ip地址、设…

blender基本操作

文章目录 引言一、选择二、移动1. xyz轴移动2. xyz平面移动3. 精确移动4. 快捷键移动G 三、旋转四、缩放五、变换1. 变换坐标系2. 变换轴心: 六、吸附七、模式切换八、物体的合并和分离1. 合并2.分离 九、设置父子级关系十、叠加层和快速收藏夹1. 叠加层2. 快速收藏…

【python基础知识】2.if条件判断与条件嵌套

文章目录 前言条件判断单向判断:if双向判断:if…else…多向判断:if…elif…else… if嵌套if嵌套的执行顺序 如何写嵌套代码 前言 在上一关,我带领你攻克了如何与Python沟通的语言大关——通过三种数据类型(字符串、整…

【ALM工具软件】上海道宁与Perforce为您带来用于整个生命周期的应用程序生命周期管理软件

Helix ALM是 用于整个生命周期的 应用程序生命周期管理的ALM软件 具有专用于 需求管理(Helix RM)、测试用例管理(Helix TCM) 问题管理(Helix IM)的功能模块 Helix ALM提供了 无与伦比的可追溯性 您将…

【MySQL学习笔记】(十)使用索引的操作

简单使用索引 创建索引创建主键索引创建唯一键索引普通索引的创建 查询索引删除索引索引创建原则 数据库中的索引与书籍中的索引类似,在一本书中,利用索引可以快速地查找所需信息, 而无须阅读整本书。在数据库中,索引使数据库程序…

跨专业可读的免统考双证的中国社科院-美国杜兰大学金融硕士

跨专业可读的免统考双证的中国社科院-美国杜兰大学金融硕士 项目优势 一、跨专业申请优势 中国社科院-美国杜兰大学金融硕士的招生对象不仅仅是金融行业的高端人才,因为金融业门槛相对较高,进入者往往已经具备了硕士晋升的学习能力,所以我…

【Github】git本地仓库建立与远程连接

文章目录 前言一、git简介二、git下载2.1下载地址 三、git安装3.1安装3.2 配置3.3 config设置(增删改查) 四.github与git连接——本地Git仓库4.1 建本地的版本库4.2 源代码放入本地仓库4.3提交仓库 五、github与git的连接——远程连接5.1 创建SSH Key5.2…

奥本海默

(1)命 电影一开头,奥本海默不擅长做实验。但你看宿命凑巧不凑巧,奥本海默成了曼哈顿计划的工程负责人,偏偏要他一次性爆炸成功。 电影一开头,奥本海默因为不擅长做实验被导师指出引起其他同学哄堂大笑&…

LiveNVR监控流媒体Onvif/RTSP功能-支持数据库切换为高斯数据库信创瀚高数据信创数据库

LiveNVR监控流媒体Onvif/RTSP支持数据库切换为高斯数据库信创瀚高数据信创数据库 1、如何配置切换高斯数据库?2、如何配置切换信创瀚高数据库?3、RTSP/HLS/FLV/RTMP拉流Onvif流媒体服务 1、如何配置切换高斯数据库? livenvr.ini -> [db]下…

Qt之事件过滤—筛选处理对象

文章目录 事件过滤完整代码 事件过滤 事件过滤是当事件发生时,可以对不同对象,实现不同操作,以达到筛选的效果。 步骤: 1、首先安装一个事件过滤器,为对象安装事件过滤,指定“谁”来监控这些事件对象 //给…

“多行业信赖选择:为什么出版、金融和教育都爱‘爱校对’“

在当今的数字时代,文本是我们沟通、传播知识和进行交易的主要工具。不论是出版行业的图书、金融行业的报告,还是教育行业的教材,文字的准确性都是不可或缺的。那么,为什么在这些关键行业中,“爱校对”成为了许多机构和…

【实践篇】Redis缓存和数据库一致性问题

Redis缓存和数据库一致性问题 文章目录 Redis缓存和数据库一致性问题0. 前言参考资料 1. 缓存和数据库的数据不一致是如何发生的?1. 删除数据的情况:2. 修改数据的情况: 0. 前言 确保缓存和数据库之间的数据一致性是一项挑战,这需…

【Kafka系列】(一)Kafka入门

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 系列文章地址 Kafka是什么? 一句话概括:「Apache Kafka 是一款开源的消息引擎系统」 什么是消息引擎系统&#…

软件测试代码覆盖率

在<professional software testing with visual studio 2005 team system tools for software developer>中提到了代码覆盖率&#xff0c;我很久没有去书店了&#xff0c;不知道是不是出了新的版本&#xff0c;觉得书里面关于代码覆盖率方面的知识有些地方没有讲&#xf…

RobotFramework自动化测试框架系列学习----(二)库与关键字

一、类库和标准库 在RIDE中&#xff0c;按F5可查看库和关键字标准库 &#xff08;RF自带的库&#xff0c;不需要额外安装&#xff09; Buitln 测试库 Collections 集合库 DateTime 时间库 Screenshot 截屏库 存放位置&#xff1a;Python37\Lib\site-packages\robot\libraries …

点成案例丨比浊仪助力牙周炎诱发因素研究

牙周炎概述 牙周炎&#xff08;Periodontitis&#xff09;是一种炎症性疾病&#xff0c;其主要特征为牙周袋的形成及袋壁的炎症、牙槽骨吸收而导致牙龈与牙齿分离、牙齿逐渐松动或掉落等。牙周炎主要是由积聚在牙龈及其附近牙面、齿颈缘的牙菌斑内细菌所分泌的毒素令牙周组织发…

Linux命令200例:xargs标准输入的数据作为参数传递使用

&#x1f3c6;作者简介&#xff0c;黑夜开发者&#xff0c;CSDN领军人物&#xff0c;全栈领域优质创作者✌。CSDN专家博主&#xff0c;阿里云社区专家博主&#xff0c;2023年6月csdn上海赛道top4。 &#x1f3c6;数年电商行业从业经验&#xff0c;历任核心研发工程师&#xff0…

DeepFaceLab和DeepFaceLive下载地址

DeepFaceLab和DeepFaceLive下载地址 项目地址&#xff1a;https://github.com/iperov/DeepFaceLab 下载地址&#xff1a;https://disk.yandex.ru/d/7i5XTKIKVg5UUg 需要科学上网 还有一个其他版本的磁力 magnet:?xturn:btih:e7ffdcb4ada863de9504f2a741f924dcd56ab84a&…

智安网络|加强软件供应链安全保障:共同抵御威胁的关键路径

在当今数字化时代&#xff0c;软件供应链安全成为了一个备受关注的话题。各行各业都依赖于软件产品和服务来支持其业务运营。然而&#xff0c;随着供应链的不断扩大和复杂化&#xff0c;软件供应链安全问题也日益突出。那么应该如何解决&#xff1f; 首先&#xff0c;软件供应…