python-3.x - 如何将一个文件拆分为 2 个小文件 tkinter gui?
问题描述
我有一个名为 ran.py 的文件,其中创建了一个按钮,该按钮应更改主窗口的颜色:
from tkinter import *
import gui
win = Tk()
b = Button(win, command=color)
b.pack()
mainloop()
在一个名为 gui.py 的文件中,我有一个应该更改背景颜色的命令:
win.configure(bg="red")
我尝试了很多事情,但总是失败并出现以下错误: win.configure(bg="red") NameError: name 'win' is not defined 我该如何做才能在单击时更改背景颜色?
解决方案
我猜你color()
里面有一个函数,gui.py
如下所示:
def color():
win.configure(bg='red')
并且command
选项b
应该如下:
b = Button(win, command=gui.color)
如果是这种情况,您将收到上述错误,因为win
它不在gui
范围内。
您应该win
作为参数传递给color()
inside gui.py
:
def color(win):
win.configure(bg='red')
然后修改command
选项如下:
b = Button(win, command=lambda: gui.color(win))