2017-04-23 6 views
0

Ich habe jetzt eine Woche lang mit dem gleichen Python/Tkinter Code zu arbeiten, und scheinbar aus dem Nichts erhalte ich die Fehlermeldung „Bad-Label-Spezifikation“:Tkinter: „Bad Etikett Anker Spezifikation“

Traceback (most recent call last): 
    File "C:/Users/shapirju/Desktop/NumericalAnalysis-Project2/gui.py", line 1188, in <module> 
     gui = App() 
    File "C:/Users/shapirju/Desktop/NumericalAnalysis-Project2/gui.py", line 62, in __init__ 
self.createWidgets() 
    File "C:/Users/shapirju/Desktop/NumericalAnalysis-Project2/gui.py", line 70, in createWidgets 
self.interpLabelframe = LabelFrame(self.root, text = "Interpolation", labelanchor=N) 
    File "C:\Program Files\Python27\lib\lib-tk\ttk.py", line 776, in __init__ 
Widget.__init__(self, master, "ttk::labelframe", kw) 
    File "C:\Program Files\Python27\lib\lib-tk\ttk.py", line 555, in __init__ 
Tkinter.Widget.__init__(self, master, widgetname, kw=kw) 
    File "C:\Program Files\Python27\lib\lib-tk\Tkinter.py", line 2096, in __init__ 
(widgetName, self._w) + extra + self._options(cnf)) 
_tkinter.TclError: Bad label anchor specification 443664640LN 

Es wird durch die Linie verursacht self.interpLabelframe = LabelFrame(self.root, text = "Interpolation", labelanchor=N)

Da dies vor ein paar Stunden funktionierte, ist dies vielleicht ein Umweltproblem? Ich kann nichts über dieses Problem bei Google finden.

+0

Was sehen Sie, wenn Sie das tun 'Druck (N)' direkt vor der Codezeile, die einen Fehler wirft ? Meine Vermutung ist, dass Sie eine Variable namens "N" erstellt (oder importiert) haben, die einen anderen Wert als die Konstante von tkinter hat. –

Antwort

0

Durch Ändern auf self.interpLabelframe = LabelFrame(self.root, text = "Interpolation", labelanchor='n') wird das Problem behoben.

Nach dem source code für LabelFrame werden die Etiketten Anker als Strings definiert 'n', 'we' usw.

+0

Aber ist 'N' nicht definiert als' "n" 'in' tkinter.constants'? – Dashadower

+0

Ja, aber es ist üblich, Großbuchstaben anstelle der Strings zu verwenden. Manchmal funktioniert es, manchmal nicht, nehme ich an. – jshapy8

+0

Ich verstehe. Sie sollten es reparieren, damit es kompatibel ist. – Dashadower

Verwandte Themen