Hallo zusammen,
ich beschäftige mich seit neuesten mit Python und TKinter. Im Moment versuche ich mich an einer kleinen GUI. Hier soll eine Textdatei ausgelesen und in Label geschrieben werden. Das funktioniert schon wenn ich einen Button verwende und die entsprechende Funktion aufrufe. Gerne würde ich aber auch die Funktion einmal beim Start der GUI automatisch aufrufen lassen, finde aber keinen Lösungsansatz. Aus diesem Grund wäre ich über Hilfe dankbar.
Beste Grüße
Funktion nach Programmstart aufrufen
Code: Alles auswählen
from tkinter import *
from tkinter import messagebox
def loadConfig():
dateihandler = open('C:\config.txt',"r")
inhalt = dateihandler.read()
tabelle = []
zeilen = inhalt.split('\n')
for i in range(len(zeilen)):
spalten = zeilen[i].split(';')
tabelle.append(spalten)
dateihandler.close()
def on_closing():
if messagebox.askokcancel("Beenden", "Wollen Sie wirklich das Programm beenden?"):
root.destroy()
root = Tk()
root.geometry("500x500+300+300")
root.wm_resizable(width=False, height=False)
root.title("SPM")
menu = Menu(root)
root.config(menu=menu)
# Toolbar
toolbar =Frame(root, bg="blue")
LoadButt = Button(toolbar, text="Laden", command=loadConfig)
LoadButt.pack(side=LEFT, padx=2, pady=2)
toolbar.pack(side=TOP, fill=X)
root.protocol("WM_DELETE_WINDOW", on_closing)
root.mainloop()
Konvention ist es Variablen- und Funktionsnamen klein_mit_unterstrich zu schreiben.
Zum Lesen von csv-Dateien gibt es das csv-Modul. `loadConfig` tut im Moment nichts.
Du kannst vor mainloop einfach `load_config` aufrufen.
Zum Lesen von csv-Dateien gibt es das csv-Modul. `loadConfig` tut im Moment nichts.
Code: Alles auswählen
import csv
CONFIG_FILENAME = "C:/config.txt"
def load_config():
with open(CONFIG_FILENAME) as lines:
reader = csv.reader(lines, delimiter=";")
table = list(reader)
#TODO: do something with table