Kann mir wer meinen Fehler erklären bzw. diesen Berichtigen (Python)?
Hallo Leute!!
Ich muss ein Programm für die Schule in Python schreiben (ich bin totaler Anfänger...ich bitte um Rücksicht;D) Doch dann bekomme ich eine Fehlermeldung und weiß nicht, was ich falsch gemacht habe...
P.S Ich benutze Python 3.4.2
Das Programm:
import tkinter
Material = tkinter.IntVar()
Material.set(0)
#Funktion der Buttons (Ende)
def ende():
main.destroy()
#Hauptfenster
main = tkinter.Tk()
#Elemente/Objekte
lb = tkinter.Label(main, text = "Hier koennen Sie das Material fuer den Boden Ihres Hauses auswaehlen...")
RButton_Stein = tkinter.Radiobutton(main, text="Stein", variable=Material,value=1)
#Anzeigen der Elemente/Objekte
lb.pack()
RButton_Stein.pack()
Button_Ende = tkinter.Button(main, text = "Auswaehlen", command = ende)
Button_Ende.pack()
#Endlosschleife
main.mainloop()
print(Material)
Die Fehlermeldung (Shell):
Traceback (most recent call last):
File "I:\Technik\Tkinter.py", line 3, in <module>
Material = tkinter.IntVar()
File "C:\Program Files\Python35\lib\tkinter\__init__.py", line 351, in __init__
Variable.__init__(self, master, value, name)
File "C:\Program Files\Python35\lib\tkinter\__init__.py", line 233, in __init__
self._root = master._root()
AttributeError: 'NoneType' object has no attribute '_root'
3 Antworten
Hallo!
benutze lieber
from tkinter import *
dann musst du als erstes "main" festlegen:
main = Tk()
das tkinter.<irgendwas> kannst du mit <irgendwas> ersetzen, da tkinter nicht mehr notwendig ist, wenn du es wie oben importierst. der komplette Code sieht so aus:
from tkinter import *
main = Tk()
Material = IntVar()
Material.set(0)
#Funktion der Buttons (Ende)
def ende():
main.destroy()
#Elemente/Objekte
lb = Label(main, text = "Hier koennen Sie das Material fuer den Boden Ihres Hauses auswaehlen...")
RButton_Stein = Radiobutton(main, text="Stein", variable=Material,value=1)
#Anzeigen der Elemente/Objekte
lb.pack()
RButton_Stein.pack()
Button_Ende = Button(main, text = "Auswaehlen", command = ende)
Button_Ende.pack()
#Endlosschleife
main.mainloop()
print(Material)
Viele Grüße und viel erfolg!
Als ich nach Hilfe für meine Assembly Language-Hausaufgaben suchte, stieß ich auf programmingassignment.net. Die Unterstützung, die ich dort erhielt, war einfach hervorragend. Die Experten halfen mir nicht nur, meine Aufgaben zu lösen, sondern erklärten auch komplexe Konzepte verständlich. Dank ihrer Hilfe konnte ich meine Programmierfähigkeiten verbessern und meine Projekte erfolgreich abschließen. Ich empfehle diese Seite jedem, der Unterstützung bei Assembly Language-Hausaufgaben benötigt: https://www.programmingassignment.net/services/assembly-language-homework-help/.
Ich kenne mich zwar nicht mit Phython aus aber es scheint so als würden die Parameter beim Konstruktoraufruf in Zeile 3 fehlen ... schau dir mal Beispiele / dokumentation zu dieser Klasse an ;)
Buh13246
könnte auch komplett falsch sein, weil ich noch nie Python angefasst habe ;)