我尝试使用tkinter
在python中使用许多命令创建按钮,但是当我尝试编译时,它们给我一个错误:
位置参数跟在关键字参数之后
c = Button(WPEngine ,text="Start", command=doStuff, command=callback, command=start)
c.grid(row=1,column=1)
答案 0 :(得分:1)
您收到的错误:
位置参数跟在关键字参数之后
但是该错误与重复的关键字参数无关。 我本来希望看到此错误:
SyntaxError:关键字参数重复
因此,我怀疑您的代码中还有其他问题,但是我们需要查看更多代码来确定根本原因。
除了调用多个命令外,您还可以执行以下2种方法之一。
第一种方法只是调用一个函数,然后调用其他几个函数。
代码示例:
from tkinter import *
def do_stuff():
print('doStuff')
def callback():
print('callback')
def start():
print('start')
def do_multiple_things():
do_stuff()
callback()
start()
root = Tk()
c = Button(root, text="Start", command=(do_stuff, callback))
c.grid(row=1, column=1)
root.mainloop()
第二种方法是使用lambda调用列表/元组中的多个函数。
代码示例:
from tkinter import *
def do_stuff():
print('doStuff')
def callback():
print('callback')
def start():
print('start')
root = Tk()
c = Button(root, text="Start", command=lambda: (do_stuff(), callback(), start()))
c.grid(row=1, column=1)
root.mainloop()
答案 1 :(得分:0)
c = Button(WPEngine ,text="Start", command=doStuff, command=callback, command=start)
您正在将多个command
参数传递给Button
构造函数。
要解决此问题,请确定您要传入command
参数。