Я пытаюсь сделать два окна ввода и кнопку «ОК», которая обрабатывает обе записи: Я не понимаю функцию init() или причину «self» должен быть включен в это. Я хочу получить доступ к элементам вне этого класса и mainloop. Записи должны быть строковыми.виджеты с несколькими элементами и один виджет кнопки в tkinter
from tkinter import *
root = Tk()
root.geometry("550x145+500+300")
class myDose:
def __init__(self):
l1 = Label(text="Enter the prescription dose to three (3) decimal places [cGy]").pack()
e1 = Entry(root)
e1.pack()
l2 = Label(text="Save new excel file as...").pack()
e2 = Entry(root)
e2.pack()
l3 = Label(text="click 'OK', and then close window.").pack()
b = Button(root, text="OK", command=submit)
b.pack()
def submit(self):
print(e1.get())
print(e2.get())
D = myDose()
root.mainloop()
#I want to access the entries, e1 and e2, outside the mainloop
print(D.e1)
print(D.e2)
От «вне главного окна», что означает «после разрушения окна». Вы знаете об этом? Или вы спрашиваете, как запустить код после 'mainloop', но с окном все еще видно? –
Я написал функции выше этого класса. Они зависят от этой переменной e1. Вот почему я хочу получить номер входа пользователя 1. Ниже этого класса в моей программе у меня есть код, похожий на функцию main() (то есть, где мой код начинает запускаться), и это зависит от e2. – Michael
Зависит ли они от e1 _widget_ или значения, введенного в виджет? –