Tkinter - Показывать содержимое записи по нажатию Enter - PullRequest
0 голосов
/ 19 февраля 2020

In Python TKinter - Как отобразить содержимое поля ввода сразу после того, как пользователь набрал текст в поле и нажал enter?

Все примеры, которые я вижу в Интернете только когда-либо отображать содержимое при нажатии кнопки.

Я хочу, чтобы мой пользователь вводил свое имя в поле ввода, нажимал ввод, а затем на ярлыке отображалось их имя.

Это не делает то, что я хочу:

entername = Entry(window,width=30)
entername.pack()

text3text = entername.get()
text3 = Label(window, text= "hello" + text3text)
text3.pack()

1 Ответ

1 голос
/ 19 февраля 2020

Это должно работать для вас:

window= Tk()

entername = Entry(window,width=30)
entername.pack()

text3 = Label(window, text= "hello")
text3.pack()

def grab_entry(event): 
    text3.configure(text = text3['text'] + entername.get())

entername.bind('<Return>', grab_entry) #binds 'enter' to the confirm function

window.mainloop()

Если вы хотите, чтобы метка отображалась после того, как введена запись, сделайте так:

def grab_entry(event): 
    text3 = Label(window, text= "hello" + entername.get())
    text3.pack()

Я бы предложил использовать первая версия, но вместо отображения hello используйте некоторые инструкции, например Enter your Name here или что-то в этом роде. И затем, когда имя введено, покажите приветственное сообщение ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...