从前面的6篇学习笔记中,我们不难发现,我们总要在Game中写入listen事件监听方法,这一篇学习笔记,我们来深入学习Pygame的事件监听需要使用到的pygame常量
pygame常量存储于pygame.locals模块中,我们可以这样导入
from pygame.locals import *
这里,我把一些常用的pygame事件常量和用途总结成如下表格,供大家学习参考(对应的数值不同的版本可能会不一样,我的pygame版本是2.1.2)
| 常量 | ASCII | 解释 |
|---|---|---|
| K_BACKSPACE | \b | 退格 |
|
K_TAB | \t | tab |
| K_RETURN | \r | 回车 |
| K_PAUSE | 暂停 | |
| K_ESCAPE | ^[ | ESC按键 |
| K_SPACE | 空格 | |
| K_ASTERISK | * | 星号 |
| K_PLUS | + | 加号 |
| K_MINUS | - | 减号 |
| K_COMMA | , | 逗号 |
| K_PERIOD | . | 句号 |
| K_SLASH | / | 斜杠 |
| K_0 | 0 | 0 |
| K_1 | 1 | 1 |
| K_2 | 2 | 2 |
| K_3 | 3 | 3 |
| K_4 | 4 | 4 |
| K_5 | 5 | 5 |
| K_6 | 6 | 6 |
| K_7 | 7 | 7 |
| K_8 | 8 | 8 |
| K_9 | 9 | 9 |
| K_EXCLAIM | ! | 感叹号 |
| K_QUOTEDBL | " | 引号 |
| K_HASH | # | 井号 |
| K_DOLLAR | $ | 美元符号 |
| K_AMPERSAND | & | &符号 |
| K_LEFTPAREN | ( | 左括号 |
| K_RIGHTPAREN | ) | 右括号 |
| K_COLON | : | 冒号 |
| K_SEMICOLON | ; | 分号 |
| K_LESS | < | 小于号 |
| K_EQUALS | = | 等于号 |
| K_GREATER | > | 大于号 |
| K_QUESTION | ? | 问号 |
| K_AT | @ | @符号 |
| K_LEFTBRACKET | [ | 左中括号 |
| K_RIGHTBRACKET | ] | 右中括号 |
| K_BACKSLASH | \ | 反斜杠 |
| K_CARET | ^ | ^符号 |
| K_UNDERSCORE | _ | 下划线 |
| K_BACKQUOTE | ` | 点号 |
| K_a | a | a |
| K_b | b | b |
| K_c | c | c |
| K_d | d | d |
| K_e | e | e |
| K_f | f | f |
| K_g | g | g |
| K_h | h | h |
| K_i | i | i |
| K_j | j | j |
| K_k | k | k |
| K_l | l | l |
| K_m | m | m |
| K_n | n | n |
| K_o | o | o |
| K_p | p | p |
| K_q | q | q |
| K_r | r | r |
| K_s | s | s |
| K_t | t | t |
| K_u | u | u |
| K_v | v | v |
| K_w | w | w |
| K_x | x | x |
| K_y | y | y |
| K_z | z | z |
| K_DELETE | Delete删除键 | |
| K_KP0 | 小键盘0 | |
| K_KP1 | 小键盘1 | |
| K_KP2 | 小键盘2 | |
| K_KP3 | 小键盘3 | |
| K_KP4 | 小键盘4 | |
| K_KP5 | 小键盘5 | |
| K_KP6 | 小键盘6 | |
| K_KP7 | 小键盘7 | |
| K_KP8 | 小键盘8 | |
| K_KP9 | 小键盘9 | |
| K_KP_PERIOD | . | 小键盘 . |
| K_KP_DIVIDE | / | 小键盘 / |
| K_KP_MULTIPLY | * | 小键盘 * |
| K_KP_MINUS | - | 小键盘 - |
| K_KP_PLUS | + | 小键盘 + |
| K_KP_ENTER | \r | 小键盘 Enter |
| K_KP_EQUALS | = | 小键盘 = |
| K_UP | 方向键↑ | |
| K_DOWN | 方向键↓ | |
| K_LEFT | 方向键← | |
| K_RIGHT | 方向键→ | |
| K_INSERT | Insert按键 | |
| K_HOME | Home按键 | |
| K_END | End按键 | |
| K_PAGEUP | 向上翻页键 | |
| K_PAGEDOWN | 向下翻页键 | |
| K_F1 | F1 | |
| K_F2 | F2 | |
| K_F3 | F3 | |
| K_F4 | F4 | |
| K_F5 | F5 | |
| K_F6 | F6 | |
| K_F7 | F7 | |
| K_F8 | F8 | |
| K_F9 | F9 | |
| K_F10 | F10 | |
| K_F11 | F11 | |
| K_F12 | F12 | |
| K_F13 | F13 | |
| K_F14 | F14 | |
| K_F15 | F15 | |
| K_NUMLOCK | 数字键盘锁定 | |
| K_CAPSLOCK | 大写锁定 | |
| K_SCROLLOCK | 滚轮锁定 | |
| K_RSHIFT | 右shift | |
| K_LSHIFT | 左shift | |
| K_RCTRL | 右ctrl | |
| K_LCTRL | 左ctrl | |
| K_RALT | 右ALT | |
| K_LALT | 左ALT | |
| K_LSUPER | 左Windows徽标键 | |
| K_RSUPER | 右Windows徽标键 |
接下来是一些pygame.key下常用的一些方法:
pygame.key.get_focused() ->bool
如果正在接受用户的键盘输入则为true
pygame.key.get_pressed()
返回一个bool值的序列,表示键盘上的每个按键的状态,使用键常量值来索引数组,值True表示被按下
pygame.key.get_mods()
返回一个整数,表示所有修改键的位掩码,使用按位运算符,可以测试是否按下了特定的修饰键
pygame.key.set_mods()
临时设置按下了哪一些修饰键
pygame.key.set_repeat(延迟,间隔)
控制按键的重复方式
启用键盘重复时,按住的键将生成多个pygame.KEYDOWN事件。该delay参数是pygame.KEYDOWN发送第一个重复事件之前的毫秒数。之后,pygame.KEYDOWN将每interval 毫秒发送另一个事件。如果提供了一个值但没有提供delay一个interval值或为 0,则interval将设置为与 相同的值 delay。
要禁用键重复调用此函数,不带参数或delay 设置为 0。
如果延迟和间隔两个参数小于零,则抛出ValueError
pygame.key.get_repeat()
获取按键的重复值
pygame.key.name(键盘按钮id常量)
返回一个字符串,从键盘按钮id常量中获取按钮的描述性名称
pygame.key.key_code(name)
传入按钮的描述性名称,返回键盘按钮id常量
以上便是pygame事件监听的一些知识
制作不易,喜欢的话就点赞收藏+关注哦~
谢谢支持~
这篇博客详细介绍了Pygame中的事件监听,特别是 pygame.locals 模块中的键盘常量,包括退格、回车、方向键等,还提到了 pygame.key 模块的相关方法,如 get_pressed() 和 set_repeat(),帮助开发者更好地处理用户输入。
1691

被折叠的 条评论
为什么被折叠?



