I create some kind of surver whitch colect data about work and save answers under Submit button.I stuck on Submit button. How I can get all data save under this one button.
Many thanks for any help.
This is only part of the code with 2 questions:
import tkinter as tk
from tkinter import *
from tkinter import ttk
from tkinter.ttk import *
import win32com.client
root = tk.Tk()
v = tk.IntVar()
tk.Label(root, text="Full Name").grid(row=0, column = 0)
tk.Entry(root).grid(row=0, column = 1)
tk.Label(root, text="Employy Number").grid(row=1, column = 0)
tk.Entry(root).grid(row=1, column = 1)
tk.Label(root,text="IF you requide for extra training please tick the box.", justify = tk.LEFT, padx = 20).grid(row=6, column = 0)
var1 = IntVar()
Checkbutton(root, text="APR", variable=var1).grid(row=7, column = 0)
var2 = IntVar()
Checkbutton(root, text="THS", variable=var2).grid(row=8, column = 0)
var3 = IntVar()
Checkbutton(root, text="GOOD IN", variable=var3).grid(row=9, column = 0)
var4 = IntVar()
Checkbutton(root, text="DESPATCH", variable=var4).grid(row=10, column = 0)
var5 = IntVar()
Checkbutton(root, text="LLOP", variable=var5).grid(row=11, column = 0)
var6 = IntVar()
Checkbutton(root, text="REACH TRUCK", variable=var6).grid(row=12, column = 0)
var7 = IntVar()
Checkbutton(root, text="CBT", variable=var7).grid(row=13, column = 0)
tk.Label(root, text="If you have any additional comments about your current position, manager ar any thing else please share with us.").grid(row=14, column= 0)
e3 = tk.Entry(root)
e3.grid(row=15, column=0)
#Submit button
def callback():
print ("I dont know what how collect all data under this button")
MyButton1 = Button(root, text="Submit", width=10, command=callback)
MyButton1.grid(row=16, column=0)
root.mainloop()
Here is a way to get what is written in Entries
and which Checkbuttons
are checked, and to print those informations (is that what you mean by "saving info in a button" ?)
For Entry
, you need to give a name to each Entry like this e1 = tk.Entry(root)
, and then grid them in a second line e1.grid(row=0, column = 1)
.
For Checkbutton
, you can check the value of the variable associated: var1 == 1
means Checkbutton1
was clicked, and var1 == 0
means not clicked.
Try this (see my print
statements in callback
) :
import tkinter as tk
from tkinter import *
from tkinter import ttk
from tkinter.ttk import *
# import win32com.client
root = tk.Tk()
v = tk.IntVar()
tk.Label(root, text="Full Name").grid(row=0, column = 0)
e1 = tk.Entry(root)
e1.grid(row=0, column = 1)
tk.Label(root, text="Employy Number").grid(row=1, column = 0)
e2 = tk.Entry(root)
e2.grid(row=1, column = 1)
tk.Label(root,text="IF you requide for extra training please tick the box.", justify = tk.LEFT, padx = 20).grid(row=6, column = 0)
var1 = IntVar()
Checkbutton(root, text="APR", variable=var1).grid(row=7, column = 0)
var2 = IntVar()
Checkbutton(root, text="THS", variable=var2).grid(row=8, column = 0)
var3 = IntVar()
Checkbutton(root, text="GOOD IN", variable=var3).grid(row=9, column = 0)
var4 = IntVar()
Checkbutton(root, text="DESPATCH", variable=var4).grid(row=10, column = 0)
var5 = IntVar()
Checkbutton(root, text="LLOP", variable=var5).grid(row=11, column = 0)
var6 = IntVar()
Checkbutton(root, text="REACH TRUCK", variable=var6).grid(row=12, column = 0)
var7 = IntVar()
Checkbutton(root, text="CBT", variable=var7).grid(row=13, column = 0)
tk.Label(root, text="If you have any additional comments about your current position, manager ar any thing else please share with us.").grid(row=14, column= 0)
e3 = tk.Entry(root)
e3.grid(row=15, column=0)
#Submit button
def callback():
print("e1.get()", e1.get())
print("var1.get()", var1.get())
print("var2.get()", var2.get())
print("var3.get()", var3.get())
print ("I dont know what how collect all data under this button")
MyButton1 = Button(root, text="Submit", width=10, command=callback)
MyButton1.grid(row=16, column=0)
root.mainloop()