Ich bin neu bei Python und versuche einen Taschenrechner mit einem Taschenrechner von Texas Instruments als Inspiration für Funktionen und Funktionen zu verwenden. Momentan versuche ich einen Shift-Button zu erstellen, der den gesamten Text der Buttons in einen anderen Textsatz ändert. Zur Vereinfachung beim Testen arbeite ich mit nur einem Knopf und die anderen sind auskommentiert. Ich habe mein Programm ausgeführt und folgende Fehlermeldung erhalten: Traceback (letzter Aufruf zuletzt): Datei "/Users/ryanflynn/shCalctest.py", Zeile 18, in txt = root.StringVar() Datei "/ Library/Frameworks/Python.framework/Versions/3,6/lib/python3.6/tkinter/init Py“, Linie 2095 in getattr return getattr (self.tk, attr) Attribute: '_tkinter.tkapp' Objekt hat kein Attribut 'StringVar'Tkinter Taschenrechner mit wechselnden Texttasten
Dies ist mein Code:
from tkinter import *
import time
root = Tk()
root.title('Calculator')
mode = 0
display = Entry(root)
display.grid(row = 1, columnspan = 6)
def txtupdate(mode):
a = ([1,2,3,4,5,6,7,8,9,0],[A,B,C,D,E,F,G,H,I,J])
txt.set(a[mode])
return
txt = tk.StringVar()
one = Button(root, variabletext = txt[0], command = lambda : print(txt))
txt.set([1,2,3,4,5,6,7,8,9,0])
one.grid(row = 2, column = 0)
'''two = Button(root, text = '2', command = lambda : print('2'))
two.grid(row = 2, column = 1)
three = Button(root, text = '3', command = lambda : print('3'))
three.grid(row = 2, column = 2)
four = Button(root, text = '4', command = lambda : print('4'))
four.grid(row = 3, column = 0)
five = Button(root, text = '5', command = lambda : print('5'))
five.grid(row = 3, column = 1)
six = Button(root, text = '6', command = lambda : print('6'))
six.grid(row = 3, column = 2)
seven = Button(root, text = '7', command = lambda : print('7'))
seven.grid(row = 4, column = 0)
eight = Button(root, text = '8', command = lambda : print('8'))
eight.grid(row = 4, column = 1)
nine = Button(root, text = '9', command = lambda : print('9'))
nine.grid(row = 4, column = 2)
zero = Button(root, text = '0', command = lambda : print('0'))
zero.grid(row = 5, column = 1)'''
shift = Button(root, text = 'sft', command = txtupdate(1))
shift.grid(row = 2, column = 1)
root.mainloop()
Jede Hilfe wäre willkommen !!
Könnten Sie eine Kopie des Fehlers geben? Normalerweise, wenn ein Fehler in einer Systemdatei auftaucht (in Ihrem Fall tkinter '__init __. Py' Datei), ist es normalerweise wegen eines Problems mit Argumenten in Ihrem Code. –
Bitte wählen Sie eine Antwort oder einen Kommentar zu den Antworten, die nicht funktioniert haben. –