tkinter.Entry mit for schleife erstellen
Verfasst: Freitag 18. Januar 2019, 06:54
Hallo. Habe mit tk Entry Felder erstellt und mit einer Funktion die Werte gespeichert. Nun habe ich die Entry Felder durch eine for Schleife verkürzt, aber es wird nicht mehr auf den Befehl .get() in der Funktion zugeriffen. Das Programm läuft, aber die eingegeben Werte werden nicht in ein txt gespeichert..
Danke
# Entry / Eingabe erstellen
ent_entry = {1 : 'self.ent_matrNr', 2 : 'self.ent_vorname', 3 : 'self.ent_nachname', 4 : 'self.ent_gebDatum', 5 : 'self.ent_email', 6 : 'self.ent_telNr'}
text = ['Matrikel Nr.:', 'Vorname', 'Nachname', 'Geburtsdatum', 'E-Mail :', 'Telefonnummer']
i = 0
for k, v in ent_entry.items():
#print(v, type(v))
v = tk.Entry(self)
v.grid(row=i, column=1)
i += 1
'''
self.ent_matrNr = tk.Entry(self)
self.ent_matrNr.grid(row=0, column=1)
self.ent_vorname = tk.Entry(self)
self.ent_vorname.grid(row=1, column=1)
self.ent_nachname = tk.Entry(self)
self.ent_nachname.grid(row=2, column=1)
self.ent_gebDatum = tk.Entry(self)
self.ent_gebDatum.grid(row=3, column=1)
self.ent_email = tk.Entry(self)
self.ent_email.grid(row=4, column=1)
self.ent_telNr = tk.Entry(self)
self.ent_telNr.grid(row=5, column=1)
'''
self.button_speichern = tk.Button(self, text="Speichern", command=self.speichern)
self.button_speichern.grid(row=7, column=0, columnspan=20, padx=5, pady=10, sticky='w')
def speichern(self):
out = tk.filedialog.asksaveasfile(mode='w', defaultextension=".txt")
text2save = 'Matrikel Nr., Vorname, Nachname, Geburtsdatum, E-Mail, Telefonnummer\n' + self.ent_matrNr.get() +','+ self.ent_vorname.get() +','+ self.ent_nachname.get() +','+ self.ent_gebDatum.get() +','+ self.ent_email.get() +','+ self.ent_telNr.get()
out.write(text2save)
out.close()
self.daten_loeschen()
tk.messagebox.showinfo("Studentendaten - Speichern", "Daten wurden gespeichert!")
Danke
# Entry / Eingabe erstellen
ent_entry = {1 : 'self.ent_matrNr', 2 : 'self.ent_vorname', 3 : 'self.ent_nachname', 4 : 'self.ent_gebDatum', 5 : 'self.ent_email', 6 : 'self.ent_telNr'}
text = ['Matrikel Nr.:', 'Vorname', 'Nachname', 'Geburtsdatum', 'E-Mail :', 'Telefonnummer']
i = 0
for k, v in ent_entry.items():
#print(v, type(v))
v = tk.Entry(self)
v.grid(row=i, column=1)
i += 1
'''
self.ent_matrNr = tk.Entry(self)
self.ent_matrNr.grid(row=0, column=1)
self.ent_vorname = tk.Entry(self)
self.ent_vorname.grid(row=1, column=1)
self.ent_nachname = tk.Entry(self)
self.ent_nachname.grid(row=2, column=1)
self.ent_gebDatum = tk.Entry(self)
self.ent_gebDatum.grid(row=3, column=1)
self.ent_email = tk.Entry(self)
self.ent_email.grid(row=4, column=1)
self.ent_telNr = tk.Entry(self)
self.ent_telNr.grid(row=5, column=1)
'''
self.button_speichern = tk.Button(self, text="Speichern", command=self.speichern)
self.button_speichern.grid(row=7, column=0, columnspan=20, padx=5, pady=10, sticky='w')
def speichern(self):
out = tk.filedialog.asksaveasfile(mode='w', defaultextension=".txt")
text2save = 'Matrikel Nr., Vorname, Nachname, Geburtsdatum, E-Mail, Telefonnummer\n' + self.ent_matrNr.get() +','+ self.ent_vorname.get() +','+ self.ent_nachname.get() +','+ self.ent_gebDatum.get() +','+ self.ent_email.get() +','+ self.ent_telNr.get()
out.write(text2save)
out.close()
self.daten_loeschen()
tk.messagebox.showinfo("Studentendaten - Speichern", "Daten wurden gespeichert!")