Über eine GUI (tkinter) Eingabe von mehreren Daten, die ausgelesen werden und in eine html-Datei geschrieben werden sollen.
Im ersten Fall klappt das wunderbar, im 2. Fall bricht das Programm immer ab.
Wer kann mir da helfen? Dankeschön
Code: Alles auswählen
import tkinter.ttk as ttk
import tkinter as tk
import os
main = tk.Tk()
page = ttk.Notebook(main)
page.pack(fill = "both", expand = 1)
daten = tk.Frame()
blubbbb = tk.Frame()
page.add(daten, text = "BLA")
page.add(blubbbb, text = "BLUB")
def readFiles():
daten_file_html = open("daten.html", "a")
daten_file_html.write ("<p>Bericht</p>"
"Name {0}, {1}</strong>".format(nachname_entry.get(), vorname_entry.get(), ))
if len(nachname_entry.get()) > 3:
daten_file_html.write ("BlaBlabBlaBlabBlaBlabBlaBlabBlaBlabBlaBlabBlaBlabBlaBlab.<br/>")
else:
daten_file_html.write ("BUUUUUUUUUUUUUUUUUU<br/>")
if len(vorname_entry.get()) > 3:
ausgabe_betreuer = ("<BlaBlabBlaBlabBlaBlabBlaBlabBlaBlabBlaBlab<br/>")
else:
daten_file_html.write ("BAAAAAAAAAAAA<br/>")
#wenn ich den jetzt folgenden Teil "aktiv" in meiner EXE aktiv schalte, dann bricht das Programm immer ab, ansonsen läuft die exe
#wenn ich das programm ganz "normal" ausführe , dann klappt alles
"""
if len(nachname_entry.get()) == 5:
daten_file_html.write("kjfklsda flk")
else:
daten_file_html.write("lsdsdjafl dsöfkjds k")
"""
daten_file_html.close()
os.startfile("daten.html", "open")
nachname_label = tk.LabelFrame(daten, text = "Nachname")
nachname_label.grid(sticky = "w")
nachname_entry = tk.Entry(nachname_label)
nachname_entry.grid(sticky = "w")
vorname_label = tk.LabelFrame(daten, text = "Vorname")
vorname_label.grid(sticky = "w")
vorname_entry = tk.Entry(daten)
vorname_entry.grid(sticky = "w")
lesenButton = tk.Button(daten, text = "Lesen", command = readFiles)
lesenButton.grid(padx = 5, pady = 5)
if __name__ == '__main__':
main.mainloop()