在python中渲染basicfont.render中的列表

时间:2013-11-27 05:51:42

标签: python list text pygame username

我正在努力使它可以在python中键入指定的框(不使用inputbox模块),并尝试将列表呈现为文本。以下是代码部分:

    TypingUsername = []
    for event in pygame.event.get():
        KeyPressed = pygame.key.get_pressed()
        TypingUsername.append(KeyPressed)
    LoginUsernameInput = basicFont.render('%d' %(TypingUsername), True, White, Black)

我不确定要将什么放入我的basicFont.render('%????')来导入列表TypingUsername('d'是我现在的占位符')。如果有人能帮助我,那将是巨大的帮助!

1 个答案:

答案 0 :(得分:1)

event.typepygame.KEYDOWN时,您只能获得按键(event.key)并添加到结果字符串。

TypingUsername = ""

for event in pygame.event.get():
    if event.type == pygame.KEYDOWN
        TypingUsername += event.key

LoginUsernameInput = basicFont.render(TypingUsername, True, White, Black)

详细了解活动:pygame.event


顺便说一下

第一个大写字母的名称应该用作类名 - 请参阅PEP 8中的Naming Conventions。因此请使用typingUsername甚至typing_usernamelogin_username_inputWhite之类的常量应为大写字母 - WHITEBLACKKEYDOWN

typing_username = ""

for event in pygame.event.get():
    if event.type == pygame.KEYDOWN
        typing_username += event.key

login_username_input = basicFont.render(typing_username, True, WHITE, BLACK)