![]() |
__call__() got an unexpected keyword argument 'text' - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: General Coding Help (https://python-forum.io/forum-8.html) +--- Thread: __call__() got an unexpected keyword argument 'text' (/thread-9410.html) |
__call__() got an unexpected keyword argument 'text' - saba_keon - Apr-06-2018 IDK what my problem is, i run it and i have come to this conclusion that if i get rid of the startClick function it runs if i put it back it breaks. plz help
from tkinter import * import time from pynput.mouse import Button, Controller #creates the window root = Tk() root.geometry("600x400") root.title("attempt1") #global var #def def startClick(): startClickingVar = 0 if startClickingVar == 0: startClickingVar = 1 while startClickingVar == 1: mouse.click(Button.right, 1) else: pass def stopClick(): if startClickingVar == 1: startClickingVar = 0 else: pass def exit(): exit() #var #lables welcomingLable = Label(root, text="Hi, Welocme to Hero Clicker AutoClicker", font=("arial", 20, "bold"), fg = "blue") welcomingLable.pack(side=TOP) #buttons start = Button(root, text="start", width=25, bg="lightgreen", command=startClick) start.place(x=50, y=140) stop = Button(root,text="stop", width = 25, bg="red", command=stopClick) stop.place(x=300, y=140) exitButton = Button(root, text="Exit", width = 25, bg="red", command=exit) exitButton.place(x=175, y=180) #enterys numberOfClicks = 1 enterCardInfo = Entry(root, textvariable= numberOfClicks, width=50, bg="orange",) enterCardInfo.place(x=150, y=100) # has to stay below so everthing runs within root.mainloop() RE: __call__() got an unexpected keyword argument 'text' - nilamo - Apr-06-2018 (Apr-06-2018, 08:10 PM)saba_keon Wrote: from tkinter import * Here's a great example of why from package import * is bad. Later in your code, you have this:Quote:start = Button(root, text="start", width=25, bg="lightgreen", command=startClick) start.place(x=50, y=140) Is start a tkinter.Button, or a pynput.mouse.Button? It's a pynput.mouse.Button, but you're using it like a tkinter button. pynput.mouse.Button doesn't understand what all those extra arguments are, which is why you're getting an error.I'd suggest removing from tkinter import * , replacing it with import tkinter as tk , and then prefixing all your tkinter code with tk. , so there's no ambiguity over what you want to be happening.
RE: __call__() got an unexpected keyword argument 'text' - saba_keon - Apr-06-2018 I changed it from tkinter import * to import tkinter as tk but now it give me this error Traceback (most recent call last): File "C:\Users\saba_\Desktop\python\clickerHero.py", line 7, in <module> tk.root = Tk() NameError: name 'Tk' is not defined >>> RE: __call__() got an unexpected keyword argument 'text' - nilamo - Apr-06-2018 Where is Tk() ? If it's in the tkinter package, then you need to prefix it. Try this, instead:root = tk.Tk() RE: __call__() got an unexpected keyword argument 'text' - saba_keon - Apr-07-2018 I got the code running but the two of the other buttons don't work. here is the error and the exit button says this
RE: __call__() got an unexpected keyword argument 'text' - nilamo - Apr-07-2018 Quote:What do you think that's doing?def exit(): exit() You defined a function, that calls itself. And when it runs, it calls itself. Again and again, forever. For the other error, I'm not sure what line that is, since the lines are different now. But it kinda looks like this: Quote:def stopClick(): if startClickingVar == 1: A function is like a black box. You pass it arguments, it does something with them, then it hands you back a response. Your black box doesn't have any arguments, but it's trying to do something with something it doesn't have. Python is smart enough to look at the rest of the function to try to figure out what you're doing, and it's "helping" by letting you know that you defined the variable later on in the function, which means it's currently "unbound" (because it doesn't exist), but you eventually define it later (referenced before assignment): UnboundLocalError: local variable 'startClickingVar' referenced before assignment .However, because you're using global variables, that doesn't actually help, either. Because you're not using it like a local variable, you're using a global. Python's error isn't going to help much with that, because it isn't something you should be doing, lol. You have a comment, #global var . That would be the place to define your global startClickingVar . Then, in this function, the very first line should be a note to Python that it should go looking for the variable somewhere else, as that function doesn't need to define it: def stopClick(): global startClickingVar if startClickingVar == 1: |