网络编程
位置:首页>> 网络编程>> Python编程>> pygame 键盘事件的实践

pygame 键盘事件的实践

作者:咸鱼箘  发布时间:2023-09-29 18:56:10 

标签:pygame,键盘

什么是事件呢?按下键盘某个按键,鼠标移动,包括点击关闭按钮都可以算是事件操作。

Pygame事件


pygame.event.EventType
'''
• 事件本质上是一种封装后的数据类型(对象)
• EventType是Pygame的一个类,表示事件类型
• 事件类型只有属性,没有方法
• 用户可自定义新的事件类型
'''

事件类型及属性

pygame 键盘事件的实践

事件处理函数

pygame 键盘事件的实践

键盘事件及类型的使用

键盘事件及属性


pygame.event.KEYDOWN  #键盘按下事件
pygame.event.KEYUP   #键盘释放事件

event.unicode   #按键的unicode码,平台有关,不推荐使用
event.key   # 按键的常量名称
event.mod   # 按键修饰符的组合值

常量描述
K_BACKSPACE退格键(Backspace)
K_TAB制表键(Tab)
K_CLEAR清除键
K_RETURN回车键(Enter)
K_PAUSE暂停键 (Pause)
K_ESCAPE退出键(Escape)
K_SPACE空格键 (Space)
K_EXCLAIM感叹号
K_QUOTEDBL双引号
K_HASH井号
K_DOLLAR美元符号
K_AMPERSANDand 符号
K_QUOTE单引号
K_LEFTPAREN左小括号
K_RIGHTPAREN右小括号
K_ASTERISK星号
K_PLUS加号
K_COMMA逗号
K_MINUS减号
K_PERIOD句号
K_SLASH正斜杠
K_00
K_11
K_22
K_33
K_44
K_55
K_66
K_77
K_88
K_99
K_COLON冒号
K_SEMICOLON分号
K_LESS小于号
K_EQUALS等于号
K_GREATER大于号
K_QUESTION问号
K_AT@ 符号
K_LEFTBRACKET左中括号
K_BACKSLASH反斜杠
K_RIGHTBRACKET右中括号
K_CARET脱字符
K_UNDERSCORE下划线
K_BACKQUOTE重音符
K_aa
K_bb
K_cc
K_dd
K_ee
K_ff
K_gg
K_hh
K_ii
K_jj
K_kk
K_ll
K_mm
K_nn
K_oo
K_pp
K_qq
K_rr
K_ss
K_tt
K_uu
K_vv
K_ww
K_xx
K_yy
K_zz
K_DELETE删除键(delete)
K_KP00(小键盘)
K_KP11(小键盘)
K_KP22 (小键盘)
K_KP33(小键盘)
K_KP44(小键盘)
K_KP55 (小键盘)
K_KP66 (小键盘)
K_KP77 (小键盘)
K_KP88 (小键盘)
K_KP99 (小键盘)
K_KP_PERIOD句号(小键盘)
K_KP_DIVIDE除号(小键盘)
K_KP_MULTIPLY乘号(小键盘)
K_KP_MINUS减号(小键盘)
K_KP_PLUS加号(小键盘)
K_KP_ENTER回车键(小键盘)
K_KP_EQUALS等于号(小键盘)
K_UP向上箭头(up arrow)
K_DOWN向下箭头(down arrow)
K_RIGHT向右箭头(right arrow)
K_LEFT向左箭头(left arrow)
K_INSERT插入符(insert)
K_HOMEHome 键(home)
K_ENDEnd 键(end)
K_PAGEUP上一页(page up)
K_PAGEDOWN下一页(page down)
K_F1F1
K_F2F2
K_F3F3
K_F4F4
K_F5F5
K_F6F6
K_F7F7
K_F8F8
K_F9F9
K_F10F10
K_F11F11
K_F12F12
K_F13F13
K_F14F14
K_F15F15
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_RMETA右边的元键
K_LMETA左边的元键
K_LSUPER左边的 Window 键
K_RSUPER右边的 Window 键
K_MODE模式转换键
K_HELP帮助键
K_PRINT打印屏幕键
K_SYSREQ魔术键
K_BREAK中断键
K_MENU菜单键
K_POWER电源键
K_EURO欧元符号

 按键的修饰符

常量描述
KMOD_NONE没同时按下组合键
KMOD_LSHIFT同时按下左边的 shift 键
KMOD_RSHIFT同时按下右边的 shift 键
KMOD_SHIFT同时按下 shift 键
KMOD_CAPS同时按下大写字母锁定键
KMOD_LCTRL同时按下左边的 ctrl 键
KMOD_RCTRL同时按下右边的 ctrl 键
KMOD_CTRL同时按下 ctrl 键
KMOD_LALT同时按下左边的 alt 键
KMOD_RALT同时按下右边的 alt 键
KMOD_ALT同时按下 alt 键
KMOD_LMETA同时按下左边的元键
KMOD_RMETA同时按下右边的元键
KMOD_META同时按下元键
KMOD_NUM同时按下数字键盘锁定键
KMOD_MODE同时按下模式转换键

按键的修饰符


event.mod
'''
修饰符的按位或运算
event.mod = KMOD_ALT | KMOD_SHIFT
'''

代码测试


import pygame,sys

pygame.init()

s = pygame.display.set_mode((600,400))
pygame.display.set_caption("hi 键盘")  
while True:
   for event in pygame.event.get():
       if event.type == pygame.QUIT:
           sys.exit()
       elif event.type == pygame.KEYDOWN:
           if event.unicode == "":
               print("#",event.key,event.mod)
           else:
               print(event.unicode,event.key,event.mod)
   pygame.display.update()

获取按键的unicode值

pygame 键盘事件的实践

来源:https://blog.csdn.net/weixin_45020839/article/details/117886708

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com