2016-07-22 31 views
-1

Ich habe eine Funktion, die wie root.title(winTitle) funktionieren soll. Hier ist mein Code:Python TypeError: Funktion nimmt 1 Positionsargumente, aber 2 wurden gegeben

from tkinter import * 
class UIWindow(): 
    def __init__(self): 
     Tk() 
    def setWindowTitle(winTitle): 
     self.title(winTitle) 

Aber wenn ich es laufen, gibt es den Fehler:

TypeError: setWindowTitle() takes one positional argument but two was given 

Wie kann ich dieses Problem beheben?

+1

Sie vermissen das "self" mit in der Methode, so dass es wäre 'def SetWindowTitle (self, winTitle)' – kazbeel

+0

Bitte ändern Sie die Frage nicht, um den Code arbeiten zu lassen. Wenn Sie das tun, gilt die Frage nicht mehr. Wenn Sie der Meinung sind, dass die Frage für zukünftige Leser hilfreich sein kann, geben Sie die Antwort im Antwortbereich ein. Wenn nicht, löschen Sie die Frage. – zondo

+0

@WozzyCoder Ich habe selbst hinzugefügt, aber es scheint nicht zu funktionieren –

Antwort

1
from Tkinter import * 
class UIWindow(): 
    def __init__(self, *arg, **kwarg): 
     self.root=Tk(*arg, **kwarg) 
    def setWindowTitle(self, winTitle): 
     self.root.title(winTitle) 

x = UIWindow() 
x.setWindowTitle("This is the Test Title.") 
x.root.mainloop() 

Sie vermissen Selbst. Dies ist das kleine Beispiel, um ein Fenster mit Titel anzuzeigen.

+0

Es funktioniert immer noch nicht –

+0

Aktualisierter Code, der dir einen Beispielcode gegeben hat. Dies demonstriert, den Titel festzulegen. Anfrage ist immer willkommen :) –

+0

Es funktioniert !! Ich danke dir sehr. Aber warum passiert das? Kannst du mir zeigen ? –