在另一个python文件中编辑GUI

时间:2019-12-04 19:28:31

标签: python tkinter import module

我正在创建一个使用多个python文件的程序。在主文件中,我创建GUI的根目录/画布。但是,我需要能够在另一个python文件中编辑此画布(添加到画布,清除画布等)。反正我能做到吗?

这段代码位于主程序(menu.py)中,该程序包含GUI的画布和根目录。它将在另一个python文件中调用另一个函数(test())。

def Search_Book():
    from searchbooks import test
    test()

test函数属于searchbooks.py文件。我需要此功能来清除原始menu.py文件中的画布。有什么办法可以做到吗?如果没有,那么可以通过其他方法来构造程序,以实现相同的目标吗?

def test():
    canvas.delete("all")

这段代码提供了 following error:

2 个答案:

答案 0 :(得分:0)

您可以从另一个文件中完全访问画布,但是必须首先将menu.py文件导入到test.py文件中。以下代码要求您具有menu.py文件和test.py(test.py是您在同一文件夹中具有test()函数的文件。

# This is in the test.py folder
import menu
def test():
  menu.canvas.delete("all")

或者,您也可以将menu.py文件的所有属性导入到test.py

# This is in the test.py folder
from menu import *
def test():
  canvas.delete("all")

希望这会有所帮助。

答案 1 :(得分:-1)

尝试以下解决方案。如果不是主要密码,它将不允许scipt运行。

if __name__ == "__main__":
print("main")