Tkinter не отображает вывод при вызове в другом скрипте - PullRequest
0 голосов
/ 14 июля 2020

У меня 2 python скриптов gui .py и main_file.py. Я пытаюсь вызвать функцию gui .get_names () в скрипте main_file.py. Появится окно, в котором я ввожу свое имя и нажимаю кнопку отправки, но в консоли ничего не печатается. Однако скрипт gui .py отлично работает. Думаю, в скрипте main_file.py есть ошибка. Взгляните на код и предложите необходимые изменения.

введите описание изображения здесь

gui .py

from tkinter import *

root = Tk()
input_frame = Frame(root)
input_frame.grid(padx=10, pady=10)


def get_name():
    return ent1.get()


input_frame = Frame(root)
input_frame.grid(padx=10, pady=10)
name_label = Label(input_frame, text='Name: ')
name_label.grid(row=0, column=0, padx=(0, 10))

ent1 = Entry(input_frame, width=18, textvariable=StringVar())
ent1.grid(row=0, column=1, padx=(0, 10))
ent1.focus()

button_frame = Frame(root)
button_frame.grid(sticky="EW")
button_frame.columnconfigure(0, weight=1)
bt1 = Button(button_frame, text="Submit", command=get_name)
bt1.grid(row=0, column=0, sticky="EW")
root.mainloop()

main_file.py

import gui


def main():
    name = gui.get_name()
    print(name)


if __name__ == '__main__':
    main()
...