Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从一个python gui程序导航到另一个?_Python_User Interface_Tkinter - Fatal编程技术网

如何从一个python gui程序导航到另一个?

如何从一个python gui程序导航到另一个?,python,user-interface,tkinter,Python,User Interface,Tkinter,下面是使用Python Tkinter的主菜单的摘录 master = Tk() lbl = Label(master, text = "Main Menu:") lbl.grid(row=0,column=1) def list(): import list listb = Button(master, text = "Patient List", command=list, width=10) listb.grid(row=1, column=1) 有一个按钮“Patien

下面是使用Python Tkinter的主菜单的摘录

master = Tk()

lbl = Label(master, text = "Main Menu:")
lbl.grid(row=0,column=1)


def list():
    import list

listb = Button(master, text = "Patient List", command=list, width=10)
listb.grid(row=1, column=1)
有一个按钮“Patient List”,按下该按钮时,会打开一个从不同python文件指定的窗口

我的问题是主菜单窗口出现了一个错误,窗口将崩溃。新窗口显示良好,但关闭后,我无法使用主菜单

还有,在我的其他按钮上。主菜单没有折叠,但假设我有一个按钮Add Patient,单击它后,会出现Add Patient窗口。它是功能性的。然后我关闭它,或者使用我在里面编程的退出按钮,或者关闭按钮。主菜单将不再打开“添加患者”窗口

那么,我怎样才能顺利地从一个python程序导航到另一个python程序呢?没有主菜单崩溃。能够一次又一次地打开窗户


我的患者列表程序中有很多定制的gui编程。我想这是因为我在我的主菜单中使用了一个网格,而在我的患者列表中它不是一个网格。但是它不应该影响主菜单,因为它们应该是独立的程序。

使用TKinter执行此类程序时,我通常使用Screen类

对于您的示例,例如: “主屏幕”、“添加屏幕”

它们都是Frame tkinter类的子类。 我的Tk应用程序只显示一个屏幕,并提供销毁和替换一个屏幕的功能

我现在没有访问任何代码,但如果您理解,我邀请您自己尝试这种方法。这导致了代码的良好分离,并取得了良好的效果


如果需要,我可以给您提供一个非常简短的示例。

调用您自己的模块和函数
list
不是一个好主意,也许可以从更改开始?同样的事情。假设我将其重命名为“def plist():import patlist”,这是同一回事。是的,但是读者不必花时间去想你为什么这样命名他们!请阅读。显然,这种模式可以通过保留以前显示的屏幕对象的固定大小列表来添加一些功能,例如“向后/向前”屏幕导航。可能有用。