Python案例:按键测试 - Go语言中文社区

Python案例:按键测试


Python案例:按键测试

1、消息类文件message.py
import pygame

class Message:
    def __init__(self, screen, text):
        self.screen = screen
        self.text = text

    def settext(self, text):
        self.text = text

    def gettext(self):
        return self.text

    def blit(self):
        font = pygame.font.SysFont('宋体', 40)
        self.surface = font.render(self.text, True, (0, 0, 255))
        self.rect = self.surface.get_rect()
        self.rect.left = 20
        self.rect.top = 50
        self.screen.blit(self.surface, self.rect)
2、函数文件functions.py
import sys

import pygame

def check_events(message):
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        elif event.type == pygame.KEYDOWN:
            message.settext('keychar: ' + chr(event.key) + ', keycode: ' + str(event.key))

def update_screen(screen, message):
    screen.fill((230, 230, 230))
    message.blit()
    pygame.display.flip()
3、主程序文件keys_main.py
import pygame
from message import Message
import functions as func

def main():
    pygame.init()
    screen = pygame.display.set_mode((400, 300))
    pygame.display.set_caption("按键测试")

    message = Message(screen, 'Press a key...')

    while True:
        func.check_events(message)
        func.update_screen(screen, message)

main()
运行程序,结果如下:
随意按一个键,比如字母键“w”:
按下回车键,键码是13,对应字符不可见:

按下空格键,其键码是32:

利用该程序,可以获取键盘上任意按键对应的键码。



版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/howard2005/article/details/79446980
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-07 16:29:58
  • 阅读 ( 797 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢