Ich habe in Python 3 ein Programm geschrieben, welches mit dem Simplex-Algorithmus lineare Gleichungen optimiert. Um die Eingabe handlicher zu gestalten, habe ich eine simples GUI mit TKinter erstellt.
Zu beginn öffnet sich ein Fenster, in welches man die Variablennamen definiert und die Anzahl der Nebenbedingungen. Somit weiß ich ja auch wie vielen und aus welchen Variablen die Nebenbedingung aufgebaut ist.
Beim Klicken auf weiter wird man nun zur Eingabe der Nebenbedingungen un der ZielFunktion weitergeleitet. (Wer mit den Simplexverfahren nix anfangen kann, kein Problem das Problem kommt noch, ich erkläre nur das alles um die Fragen zu vermeiden "Warum machst du es nicht anders?")
Nun habe ich also ein Fenster das dem entsprechend aufgebaut ist, was man beim ersten Fenster eingegeben hat (Wie viele NebenBedingungen, wie viele Werte pro NB / ZF definiert werden müssen)
Code: Alles auswählen
for i in range(Anzahl_NB):
Label_Anweisung_NB = Label(Berechnen, text = str(i + 1) + ".NB: Werte der Variablen: ")
Label_Anweisung_NB.grid(row = i, column = 0)
for x in range(Anzahl_Variablen):
Input_Werte_NB = Entry(Berechnen, bd=5, width=5)
Input_Werte_NB.grid(row = i, column = 2*x + 1)
Label_Name_Variable_NB = Label(Berechnen, text = Namen_Variablen[x])
Label_Name_Variable_NB.grid(row = i, column = 2*x + 2)
Label_Anweisung_ZF = Label(Berechnen, text = " ZF: Werte der Variablen")
Label_Anweisung_ZF.grid(row = i+1, column = 0)
for x in range(Anzahl_Variablen):
Input_Werte_ZF = Entry(Berechnen, bd=5, width=5)
Input_Werte_ZF.grid(row = i+1, column = 2*x + 1)
Label_Name_Variable_ZF = Label(Berechnen, text = Namen_Variablen[x])
Label_Name_Variable_ZF.grid(row = i+1, column = 2*x + 2)
Berechnen_Button = Button(Berechnen, text="Berechnen", command=berechnen_action)
Quit_Button = Button(Berechnen, text="Beenden", command=fenster.quit)
Berechnen_Button.grid(row = i+6, column = 0)
Quit_Button.grid(row = i+6, column = 1)
(für den Simplex-Algorithmus muss ich alle Werte nach einander in einer Liste speichern)
Und ich kann denen ja keine jeweiligen Namen geben, da ich ja nicht weiß wie viele Variablen bei wie vielen NB. Ich hoffe, ihr könnt mir weiterhelfen bzw. ich stehe nur auf dem Schlauch
Freue mich über jede Hilfe.
PS: Wie kann man eigentlich den Text eines Labels erweitern?