Я видел ответы на вопросы, касающиеся одной записи - которая работает так, как я пытался, но я хочу знать, есть ли возможность получить значения из нескольких записей одним нажатием кнопки. Сценарий строит форму - как в приведенном ниже коде, который просит пользователя ввести несколько параметров. Затем, нажав на кнопку - можно выполнить некоторую операцию с этими данными (Print \ write to file et c ..). Код ниже представляет собой форму, которую я пытаюсь создать (моя первая python прога - для проверка возможностей и т. д. c.) и я не могу получить значения, которые были введены в форме. Основная цель - это возможность записи значений, введенных в файл. Но я удовлетворюсь, просто заставив код работать для печати значений :-) Я действительно новичок в python (3) и буду признателен за любую помощь :-) код:
def CreateUser():
# Define Confirmation Function (For checking option - print, Generally i would like the values to be written to file)
def Confirmation():
UserInput.set(UserNo_entered.get())
print(UserInput.get())
# Запись в файл, который я хотел бы выполнить
# f = open (ProgramPath + "\ Users.txt", "a +") # f.write (UserNo + "," + FName + "," + LName + " , "+ Телефон +", "+ Улица +", "+ \ # HouseNo +", "+ Квартира +", "+ Страна) # f.close ()
win = tk.Tk()
#Window Title
win.wm_title("CREATE USER")
#Window size
win.wm_geometry("500x300")
ttk.Label(win, text="\n").grid(column=0, row=1) #Empty Line
ttk.Label(win, text="Enter User Details Below:",font=("David",12,"bold","underline")).grid(column=0, row=1,padx=0, pady=10,sticky="W") #Pad x,y for spaces between lines
# User No.
ttk.Label(win, text="User No.:",font=("David",12)).grid(column=0,row=3,padx=0, pady=10,sticky="W") #sticky="W" for aligning to the left
UserNo=StringVar()
UserNo_entered= tk.Entry(win, width=12, textvariable=UserNo, cursor="pencil").grid(row=3,padx=50)
#UserNo_entered= tk.Entry(win, width=12,textvariable=UserNo, cursor="pencil").grid(row=3,padx=50)
ttk.Label(win,text="* Mandatory",font=("Miryam fixed",10),foreground="red").grid(row=3,column=1,sticky="W")
#First Name
ttk.Label(win, text="First Name:",font=("David",12)).grid(column=0, row=4,padx=0, pady=10,sticky="W")
FName = tk.StringVar()
FName_entered = ttk.Entry(win, width=12, textvariable=FName, cursor="pencil").grid(row=4,padx=100)
ttk.Label(win,text="* Mandatory",font=("Miryam fixed",10),foreground="red").grid(row=4,column=1,sticky="W")
#Last Name
ttk.Label(win, text="Last Name:",font=("David",12)).grid(column=0, row=5,padx=0, pady=10,sticky="W")
LName = tk.StringVar()
LName_entered = ttk.Entry(win, width=12, textvariable=LName, cursor="pencil").grid(row=5,padx=100)
#Telephone
ttk.Label(win, text="Telephone:", font=("David", 12)).grid(column=1, row=5, padx=0, pady=10, sticky="W")
Telephone = tk.StringVar()
Telephone_entered = ttk.Entry(win, width=12, textvariable=Telephone, cursor="pencil").grid(row=5, column=1, padx=100)
#Street
ttk.Label(win, text="Street:", font=("David", 12)).grid(column=0, row=6, padx=0, pady=10, sticky="W")
Street = tk.StringVar()
Street_entered = ttk.Entry(win, width=12, textvariable=Street, cursor="pencil").grid(row=6, padx=100)
#House\Block no.
ttk.Label(win, text="House No.:", font=("David", 12)).grid(column=1, row=6, padx=0, pady=10, sticky="W")
HouseNo = tk.StringVar()
HouseNo_entered = ttk.Entry(win, width=12, textvariable=HouseNo, cursor="pencil").grid(row=6,column=1, padx=100)
# Apartment no.
ttk.Label(win, text="Apartment No.:", font=("David", 12)).grid(column=1, row=7, padx=0, pady=10, sticky="W")
Apartment = tk.StringVar()
Apartment_entered = ttk.Entry(win, width=12, textvariable=Apartment, cursor="pencil").grid(row=7, column=1, padx=100)
#Country
ttk.Label(win, text="Country:", font=("David", 12)).grid(column=0, row=7, padx=0, pady=10, sticky="W")
Country = tk.StringVar()
Country_entered = ttk.Entry(win, width=12, textvariable=Country, cursor="pencil").grid(row=7, column=0, padx=100)
ConfirmB=ttk.Button(win,text="CONFIRM",command=Confirmation)
ConfirmB.place(x=200,y=250)
win.mainloop(