Как удалить текст с событием. Юникод в pygame?

В этой программе я хочу, чтобы пользователь мог вводить клавиши и отображать их на экране по мере их набора. Я также хочу, чтобы они могли использовать backspace для удаления букв. Однако, когда пользователь нажимает клавишу возврата, он просто перемещает курсор назад, но не удаляет букву. Как это исправить?

from pygame import *

entered = False

init()
screen = display.set_mode((800, 600))

name_font = font.Font(None, 32)
name_text = ''


def naming():
    global name_text
    if events.type == KEYDOWN:
        if events.key == K_BACKSPACE:
            name_text = name_text[:-1]
        else:
            name_text += events.unicode
    text_surface = name_font.render(name_text, True, (255, 255, 255))
    screen.blit(text_surface, (50, 50))


while True:
    keys = key.get_pressed()

    for events in event.get():
        keys = key.get_pressed()
        naming()
        if events.type == QUIT:
            quit()
    display.update()

person mr. bug    schedule 28.09.2020    source источник
comment
Вы не очищаете фон, поэтому старый более длинный текст просто остается на экране под более коротким текстом, к которому применен обратный интервал.   -  person Kingsley    schedule 28.09.2020
comment
Как бы очистить фон? Будет ли это включать функцию screen.fill?   -  person mr. bug    schedule 28.09.2020
comment
Неважно, я понял это   -  person mr. bug    schedule 28.09.2020