Hilfe bei erstellen und Weiterverarbeitung eines Textfeldes
Verfasst: Sonntag 10. Juli 2016, 12:09
Hallo zusammen!
Da mein letzes Skript so läuft wie ich es mir gewünscht habe, versuche ich mich an mein nächstes Projekt.
Obwohl das Buch eigentlich super ist, fehlt mir super viel zum Verständnis von tkinter im Zusammenhang mit der Weiterverarbeitung von Variablen in neue Funktionen.
Hier ist mal der Ansatz von meinem Skript. Ich stehe noch am Anfang. Die Kommentare sind für mich, damit ich den Überblick behalte. Die verschwinden noch. Wie gesagt, das Skript ist noch am Anfang, da ich versuche erst die leichten Funktionen zu begreifen und mich im Schwierigkeitsgrad nach oben zu bewegen.
Mein Problem:
Wenn ich auf Datei --> Neu klicke möchte ich die Funktion "ask_new_database()" aufrufen, in der Ich nach dem Dateinamen frage... ja und dann möchte ich entweder in dieser funktion eine sqlite datenbank erstellen, oder eine neue Funktion aufrufen, die das erledigt.
Aber wie gesagt, ich verstehe nicht, wie ich die Information aus der Eingabemaske weiterberarbeite. Kann mir einer von euch Python-Göttern da mal weiterhelfen und mir das eventuell auch direkt mal genauer erklären? So das ich nicht nur im Skript weiterkomme, sondern auch verstehe was da passiert?
Ich danke euch schon mal vielmals!
Da mein letzes Skript so läuft wie ich es mir gewünscht habe, versuche ich mich an mein nächstes Projekt.
Obwohl das Buch eigentlich super ist, fehlt mir super viel zum Verständnis von tkinter im Zusammenhang mit der Weiterverarbeitung von Variablen in neue Funktionen.
Hier ist mal der Ansatz von meinem Skript. Ich stehe noch am Anfang. Die Kommentare sind für mich, damit ich den Überblick behalte. Die verschwinden noch. Wie gesagt, das Skript ist noch am Anfang, da ich versuche erst die leichten Funktionen zu begreifen und mich im Schwierigkeitsgrad nach oben zu bewegen.
Code: Alles auswählen
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import tkinter, tkinter.messagebox
def ende():
main.destroy()
def testfenster():
tkinter.messagebox.showinfo("Test","Das ist eine Testmeldung!!!")
def schliessen():
schliessen = tkinter.messagebox.askyesno("Schließen?", "Soll das Programm geschlossen werden? Ggf. nicht gespeicherte Daten können verloren gehen!")
if schliessen == 1:
ende()
else:
pass
def about():
tkinter.messagebox.showinfo("Über", "CD-Box Version 0.001 \n"
"(c) blabla")
def ask_new_database():
eingabe = e.get()
e = tkinter.Entry(e)
e.pack
dbname = tkinter.Label(e)
bdbname = tkinter.Button(e, text="OK", command = new_database)
def new_database():
pass
# hier soll die Funktion zum erstellen einer Datenbank entstehen
main = tkinter.Tk()
main.title("CD-Box")
# Zielobjekt der Menubefehle
fr = tkinter.Frame(main, height=300, width=600,
bg="#FFFFFF", bd=10)
fr.pack()
# erzeugt gesamte Menuleiste
mBar = tkinter.Menu(main)
# erzeugt erstes Menuobjekt der Menuleiste
mFile = tkinter.Menu(mBar)
# erzeugt Elemente in erstem Menu
mFile.add_command(label="Neu", command=ask_new_database)
mFile.add_command(label="Laden")
mFile.add_command(label="Speichern")
mFile.add_separator()
mFile.add_command(label="Beenden", command=schliessen)
# erzeugt zweites Menuobjekt der Menuleiste
mView = tkinter.Menu(mBar)
mView["tearoff"] = 0 # Menu nicht abtrennbar
mInfo = tkinter.Menu(mBar)
mInfo.add_command(label="About", command=about)
# erstes und zweites Menu zur Menuleiste hinzu
mBar.add_cascade(label="Datei", menu=mFile)
mBar.add_cascade(label="?", menu=mInfo)
# gesamte Menuleiste zu Fenster hinzu
main["menu"] = mBar
main.mainloop()
Wenn ich auf Datei --> Neu klicke möchte ich die Funktion "ask_new_database()" aufrufen, in der Ich nach dem Dateinamen frage... ja und dann möchte ich entweder in dieser funktion eine sqlite datenbank erstellen, oder eine neue Funktion aufrufen, die das erledigt.
Aber wie gesagt, ich verstehe nicht, wie ich die Information aus der Eingabemaske weiterberarbeite. Kann mir einer von euch Python-Göttern da mal weiterhelfen und mir das eventuell auch direkt mal genauer erklären? So das ich nicht nur im Skript weiterkomme, sondern auch verstehe was da passiert?
Ich danke euch schon mal vielmals!