返回顶部
首页 > 资讯 > 后端开发 > Python >pygame实现键盘的连续监控
  • 117
分享到

pygame实现键盘的连续监控

2024-04-02 19:04:59 117人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

pygame对键盘的连续监听,供大家参考,具体内容如下 大家请看下面这一段代码: for event in pygame.event.get(): if event.type

pygame对键盘的连续监听,供大家参考,具体内容如下

大家请看下面这一段代码:


for event in pygame.event.get():
  if event.type == pygame.QUIT:
   exit()
  elif event.type == pygame.KEYDOWN:
   if event.key == pygame.K_RIGHT:
    print("右")
   if event.key == pygame.K_UP:
    print("上")
   if event.key == pygame.K_DOWN:
    print("下")
   if event.key == pygame.K_LEFT:
    print("左")

大家首次监控键盘事件一般都会写出这样的代码我们着重来看一下对键盘上下左右键的监控。我们运行代码块我们会发现这几行代码和我们的想法是不一样的,我们在开发游戏的时候,我们大部分时候希望是可以连续控制,这样可以大大减少我们的手部疲劳,对玩家们也会非常的友好,但是我们现在的代码块,是敲一下键盘响应一次事件。所以我们要对代码进行改进,改进的方法有以下两种,大家可以根据自己的理解进行选择。

方法一:设置中间变量


moving_r = False
moving_l = False
moving_u = False
moving_d = False
while True:
 for event in pygame.event.get():
  if event.type == pygame.QUIT:
   exit()
  elif event.type == pygame.KEYDOWN:
   if event.key == pygame.K_RIGHT:
    moving_r = True
   if event.key == pygame.K_UP:
    moving_u = True
   if event.key == pygame.K_DOWN:
    moving_d = True
   if event.key == pygame.K_LEFT:
    moving_l = True
  elif event.type == pygame.KEYUP:
   if event.key == pygame.K_RIGHT:
    moving_r = False
   if event.key == pygame.K_UP:
    moving_u = False
   if event.key == pygame.K_DOWN:
    moving_d = False
   if event.key == pygame.K_LEFT:
    moving_l = False
 if moving_r:
  print("右")
 elif moving_u:
  print("上")
 elif moving_d:
  print("下")
 elif moving_l:
  print("左")

引入四个moving变量将四个变量的初值均设为Flase,用pygame的KEYDOWN和KEYUP方法来改变四个变量的值,以此来实现对键盘的连续监控,这种方法虽然很好理解,但是如果是小白对代码的重构不是很熟悉会显得非常缀余。

方法二:运用pygame中get_pressed()


# 键盘的连续监听
 Key_pressed = pygame.key.get_pressed()
 if Key_pressed[K_UP]:
  print("上")
 if Key_pressed[K_DOWN]:
  print("下")
 if Key_pressed[K_LEFT]:
  print("左")
 if Key_pressed[K_RIGHT]:
  print("右")

这样也是能连续监听键盘事件,但是这里需要注意一下if半段语句后面是中括号并非是小括号,第二个要注意的地方便是键盘名称,如果直接输入K_UP等是会报错的,有两种解决办法一种是导入pygame的方法:


from pygame import *

这样就不会报错了,另一种是在K_UP 前面加上pygame如:


if Key_pressed[pygame.K_UP]:
  print("上")

这样也是可行的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: pygame实现键盘的连续监控

本文链接: https://lsjlt.com/news/122964.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • pygame实现键盘的连续监控
    pygame对键盘的连续监听,供大家参考,具体内容如下 大家请看下面这一段代码: for event in pygame.event.get(): if event.type...
    99+
    2024-04-02
  • pygame键盘事件如何实现
    这篇文章主要介绍了pygame键盘事件如何实现,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Pygame事件pygame.event.EventType''&...
    99+
    2023-06-25
  • pygame 键盘事件的实践
    目录Pygame事件事件类型及属性事件处理函数键盘事件及类型的使用键盘事件及属性什么是事件呢?按下键盘某个按键,鼠标移动,包括点击关闭按钮都可以算是事件操作。 Pygame事件 ...
    99+
    2024-04-02
  • python实现监听键盘
    python实现监听键盘,供大家参考,具体内容如下实现服务端 import pickle from io import BytesIO import socket #接收数据 def Server_Recive...
    99+
    2022-06-02
    python 监听键盘
  • pygame实现键盘和鼠标事件的处理
    所谓事件,就是程序上发生的事。例如用户按下键盘上的某个键或者单击、移动鼠标,对于这些事件,游戏程序需要作出反应。如《 pygame 图像/图形绘制》中例子,程序会一直运行下去,直到用...
    99+
    2024-04-02
  • python怎么实现监听键盘
    小编给大家分享一下python怎么实现监听键盘,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Python的优点有哪些1、简单易用,与C/C++、Java、C# 等...
    99+
    2023-06-14
  • Android监听键盘状态获取键盘高度的实现方法
    前言 Android暂时还没有提供一个合适的API来获取/监听键盘的状态和高度 , 而我们又经常会有这个需求. 最近我的一个项目中,在ugc页面需要在键盘顶部,紧贴着键盘显示一...
    99+
    2022-06-06
    方法 Android
  • Android App实现监听软键盘按键的三种方式
    前言: 我们在Android手机上面有时候会遇到监听手机软键盘按键的时候,例如:我们在浏览器输入url完毕后可以点击软键盘右下角的“Go”按键加载url页面;在点击搜索框的时候...
    99+
    2022-06-06
    监听 app 软键盘 Android
  • shell脚本实现磁盘监控系统
    利用shell脚本实现每隔60秒磁盘内存数据监控 #!/bin/bash #Author:GaoHongYu #QQ:1061767621 #Time:2019-12-24 18:43:22 #Name:ncjk.s...
    99+
    2022-06-04
    shell 磁盘 shell 磁盘监控
  • 如何实现Flex键盘事件的监听机制
    这篇文章给大家分享的是有关如何实现Flex键盘事件的监听机制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Flex键盘事件的监听Flex的事件监听机制很完善,下面主要简单的讲一下Flex键盘事件的监听。首先,要理...
    99+
    2023-06-17
  • WPF实现自带触控键盘的文本框
    一 引入 项目有个新需求,当点击或触碰TextBox时,基于TextBox的相对位置,弹出一个自定义的Keyboard,如下图所示: 二 KeyboardControl 先实现一个...
    99+
    2024-04-02
  • Pygame实现监听鼠标的示例分析
    Pygame实现监听鼠标的示例分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。初始化参数import pygame, sysfrom pyg...
    99+
    2023-06-22
  • shell脚本如何实现磁盘监控系统
    这篇文章给大家分享的是有关shell脚本如何实现磁盘监控系统的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。利用shell脚本实现每隔60秒磁盘内存数据监控#!/bin/bash#Author:GaoHongYu#...
    99+
    2023-06-09
  • prometheus监控nginx的实现
    目录简述1.下载nginx-module-vts模块2.安装nginx3.安装nginx-vts-exporter4.修改prometheus-cfg.yaml文件5.在grafan...
    99+
    2024-04-02
  • Python键盘监听:实现快捷操作和自动化脚本(监听组合键
    前言 本文主要介绍一下使用Python进行事件监听功能,以实现一些特有的操作。本文旨在介绍如何实现这一功能。 笔者根据一些需求写了一个小工具,流程和功能如下图所示(实际功能有更多): 该工具...
    99+
    2023-09-13
    python 计算机外设 自动化 键盘监听
  • Python Pygame实现可控制的烟花游戏
    目录实现效果描述效果代码地址解析main.pycore.pyfireworks.py写在最后自控烟花升空 实现效果描述效果代码地址解析main.pycore.pyfireworks....
    99+
    2024-04-02
  • python使用pynput库操作、监控你的鼠标和键盘
    目录楔子鼠标操作鼠标监控鼠标键盘监控楔子 python是一门很神奇的语言,原因在于它有很多的库可以实现各种意想不到的功能。当然我们这次介绍的库所实现的功能却是已经很常见了,就是操作...
    99+
    2024-04-02
  • Android自定义键盘的实现(数字键盘和字母键盘)
    在项目中,产品对于输入方式会有特殊的要求,需要对输入方式增加特定的限制,这就需要采用自定义键盘。本文主要讲述数字键盘和字母键盘的自定义实现。项目地址:https://github.com/xudjx/djkeyboard键盘效果:自定义键盘...
    99+
    2023-05-30
    android 数字键盘 字母键盘
  • Hystrix Dashboard断路监控仪表盘的实现详细介绍
    正常状态是UP,跳闸是⼀种状态CIRCUIT_OPEN,可以通过/health查看,前提是工程中需要引入SpringBoot的actuator(健康监控),它提供了很多监控所需的接口...
    99+
    2024-04-02
  • Redis性能监控的实现
    目录1.redis_exporter2.prometheus3.grafanaredis_exporter + prometheus +grafana监控Redis服务指标 本文使用...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作