一、PyGame 鼠标键盘事件
事件类型有很多种,例如: QUIT 和 MOUSEMOTION 等, 这些预定义的事件类型作为常量定义在 pygame.local 模块中,下面这些是最早的事件类型和它们的属性,后面不同的版本又补充了例如手势等事件,具体参考官方文档:
QUIT none
ACTIVEEVENT gain, state
KEYDOWN key, mod, unicode, scancode
KEYUP key, mod
MOUSEMOTION pos, rel, buttons
MOUSEBUTTONUP pos, button
MOUSEBUTTONDOWN pos, button
JOYAXISMOTION joy, axis, value
JOYBALLMOTION joy, ball, rel
JOYHATMOTION joy, hat, value
JOYBUTTONUP joy, button
JOYBUTTONDOWN joy, button
VIDEORESIZE size, w, h
VIDEOEXPOSE none
USEREVENT code
我们可以在程序中模拟一下:
import pygame
pygame.init()
resolution = width, height = 480, 700
windowSurface = pygame.display.set_mode(resolution) # 设置分辨率并得到全局的绘图表面
pygame.display.set_caption("鼠标键盘操作")
clock = pygame.time.Clock()
while True:
# 处理用户输入
for event in pygame.event.get():
# 处理事件
print(str(event))
# 刷新界面
pygame.display.flip()
# 时钟停留一帧的时长
clock.tick(60)
通过print(str(event))然后在运行过程就,就会输出很多信息。

输出的数据有:
<Event(5-MouseButtonDown {
'pos': (162, 375), 'button': 1, 'window': None})>
<Event(6-MouseButtonUp {
'pos': (162, 375), 'button': 1, 'window': None})>
<Event(2-KeyDown {
'unicode': '', 'key': 100, 'mod': 0, 'scancode': 32, 'window': None})>
<Event(3-KeyUp {
'key': 100, 'mod': 0, 'scancode': 32, 'window': None})>
<Event(2-KeyDown {
'unicode': '', 'key': 102, 'mod': 0, 'scancode': 33, 'window': None})>
<Event(3-KeyUp {
'key': 102, 'mod': 0

本文围绕PyGame的鼠标键盘事件展开。介绍了事件类型及属性,阐述键盘操作相关函数,包括按键按下和释放时的事件消息、键盘常量等,还说明了鼠标操作,最后给出键盘和鼠标监听案例。
最低0.47元/天 解锁文章
1053

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



