python tkinter窗口界面更新

auforever888888 2010-12-27 10:36:27
新手上路,很多东西不懂。最近要做一个小程序,用了python Tkinter来编写GUI。有个问题不知道怎解决,请各位大侠教教我!
首先看第一个文件:test1
#test1.py
import Tkinter
root=Tkinter.Tk()
button1=Tkinter.Button(root,text='NEXT',
command=root.quit)
button1.pack(side=Tkinter.LEFT)
root.mainloop()
root.destroy

再看第二个文件:test2
#test2.py
import test1
import Tkinter
root=Tkinter.Tk()
button2=Tkinter.Button(root,text='NEXT',
command=root.quit)
button2.pack(side=Tkinter.RIGHT)
root.mainloop()
root.destroy

问题是:运行test2后,由于导入了test1模块,所以会依次产生两个窗口,我的目的是产生第一个窗口时按下按钮NEXT,第一个窗口消失,然后产生第二个窗口。可是我不知道怎么使第一个窗口消失!各位高手费费心,教教我这个菜鸟吧!多谢!!
...全文
2214 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
thinker56 2012-08-29
  • 打赏
  • 举报
回复
Thanks for angel_su
auforever888888 2010-12-27
  • 打赏
  • 举报
回复
谢谢您的回复,可是我需要用到test1里面的函数和变量的,这个例子只是简化了的,我希望能只运行一个脚本,然后就像软件那样的更换窗口信息。
ckc 2010-12-27
  • 打赏
  • 举报
回复
你不要import test1了
你可以直接run test1,这样test1执行完毕退出再执行test2
auforever888888 2010-12-27
  • 打赏
  • 举报
回复
只是,我想再请教一下angel_su,这样的循环下来的话,窗口组件布局是不是都一样了?例如第二个窗口的按钮‘NEXT’我想place在右边。
auforever888888 2010-12-27
  • 打赏
  • 举报
回复
嗯,angel_su的回答超级好,非常满意,非常感谢!同样也感谢ckc,谢谢你们!
angel_su 2010-12-27
  • 打赏
  • 举报
回复
先起单一窗口,按钮command参数绑定到自定义函数,函数里再开新窗口删除旧窗口,类似...
import Tkinter as tk

class MyWindow():
def __init__(self):
self.root = tk.Tk()
button=tk.Button(self.root, text='NEXT',
command=self.OnNext)
button.pack()

def OnNext(self):
win = MyWindow()
self.root.destroy()

win = MyWindow()
win.root.mainloop()

37,743

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧