Ich muss von einem Start-Eingangswert zu einem Endwert mit tkinter Eingabefeldern zählen, aber die 2 Ausgabedateien sind leer, außer Klammern und ich weiß, dass die CSV-Ausgaben funktionieren, es ist nur die Benutzereingabe, die das ist Problem. Danke für jede Hilfe.Tkinter Eingabefelder
Es gibt den aktuellen Code.
import csv
from tkinter import *
# Variables/Arrays
oddArray = []
evenArray = []
def main():
for i in range(oute1, oute2):
x = i
# Odds
if(x % 2 == 1):
oddArray.append(x)
# Evens
elif(x % 2 == 0):
evenArray.append(x)
with open("odd_labels", "w") as outputFile1:
writer1 = csv.writer(outputFile1)
writer1.writerow([oddArray])
with open("even_labels", "w") as outputFile2:
writer2 = csv.writer(outputFile2)
writer2.writerow([evenArray])
# gui framework
myGui = Tk()
# myGui.geometry('225x50')
# myGui.title("Label Creator")
Label(myGui, text="Starting value: ").grid(row=0)
Label(myGui, text="Ending value: ").grid(row=1)
a = IntVar()
b = IntVar()
e1 = Entry(myGui, textvariable=a).grid(row=0, column=1)
e2 = Entry(myGui, textvariable=b).grid(row=1, column=1)
oute1 = a.get()
oute2 = b.get()
Button(myGui, text="Start", command=main).grid(row=3)
myGui.mainloop()
Danke für die Hilfe, aber dass es nicht beheben und die Dateien werden beide nur noch Klammern zurück. –
Das liegt daran, dass deine oute1 und oute2 am Anfang deines Programms erstellt wurden und niemals geändert werden. Sie müssen sie in eine Funktion verschieben, die bei einem Ereignis wie einem Knopfklick oder etwas aufgerufen wird. –
@JoeAckerson: Ich habe meine Antwort mit einigen weiteren Informationen aktualisiert. –