Это мой первый персональный проект python. Я хочу использовать Tkinter для создания окна (GUARDIAN LOCATOR), который просит пользователя ввести значение (введите опекуна моряка) в поле ввода. Остальная часть программы зависит от того, что пользователь вводит в поле ввода, так как я буду иметь, если введя/-ые заявления, реагирующие на введенного матроса-опекуна.Значение окна ввода магазина Tkinter как значение для другого файла
Проблема, с которой я столкнулась, заключается в хранении того, что введено в поле ввода, в качестве переменной, которая будет использоваться в моем основном файле для операторов if/else. Я могу получить значение для печати в окне приглашения, но я не смог успешно сохранить его для глобальной переменной.
Мое окно Tkinter находится в его собственном классе.
Я пробовал много разных способов сделать это на основе похожих проблем из stackoverflow, но каждый раз получаю ошибку. Это мой базовый код, который все еще вызывает ошибку.
файл класса с окном Tkinter
class GuardianLocator:
def __init__(self, master):
frame = Frame(master)
frame.grid()
master.title("GUARDIAN LOCATOR")
self.locator_label = Label(frame, text="Which Sailor Guardian are you looking for?", width=40, height=2)
self.locator_label.grid()
self.entry = Entry(frame)
self.entry.grid()
self.button1 = Button(frame, text="Search", command=self.guardian_name, pady=2)
self.button1.grid()
def guardian_name(self):
print(self.entry.get())
и в моей основной рабочий файл
root = Tk()
locator = guardian_locator.GuardianLocator(root)
root.mainloop()
Это мой тестовый цикл, чтобы увидеть, если он работает.
if locator.guardian_input() is "Sailor Moon":
print("hi")
else:
print("no")
Омгош, который работает! Раньше я пытался сделать очень похожий метод, но, должно быть, я его каким-то образом напортачил. Спасибо, Марцин! – djohnson129
@ djohnson129 Если anwser хорош, это будет хорошо :-) – Marcin
Если бы вы хотели нажать на галочку, я просто сделал. Я еще не знал об этом: / – djohnson129