当前位置: 首页 > 图灵资讯 > 行业资讯> 如何实现python tkinter控件随窗口变化?

如何实现python tkinter控件随窗口变化?

来源:图灵python
时间: 2024-11-19 14:02:40

不管是对于Java还是对于Python,我们最开始学习的时候,都会碰到关于开发上的窗口设置,如果不设置这个内容,你所呈现的项目效果,是非常不美观的,而往往为了符合美化,大家都会花费很多心思在基础的窗口设置上,这在每一个语言程序里都是有体现的,我们今日来看下在python上是什么效果吧~

主程序相当于桌子:

importtkinterastk
root=tk.Tk()

而不同的Frame相当于不同的桌布:

face1=tk.Frame(root)
face2=tk.Frame(root)
...

每个界面采用类的方式定义各自的控件和函数,每个界面都建立在一个各自定义的Frame上,那么在实现跳转界面的效果时,

只需要调用tkinter.destroy()方法销毁旧界面,同时生成新界面的对象,即可实现切换。

具体代码:

#-*-coding:utf-8-*-
"""
CreatedonTueOct1611:15:012018
Description:tkinter界面切换
Version:

@author:HJY
"""
importtkinterastk


classbasedesk():
def__init__(self,master):
self.root=master
self.root.config()
self.root.title('Basepage')
self.root.geometry('200x200')

initface(self.root)

classinitface():
def__init__(self,master):

self.master=master
self.master.config(bg='green')
#基准界面initface
self.initface=tk.Frame(self.master,)
self.initface.pack()
btn=tk.Button(self.initface,text='change',command=self.change)
btn.pack()

defchange(self,):
self.initface.destroy()
face1(self.master)

classface1():
def__init__(self,master):
self.master=master
self.master.config(bg='blue')
self.face1=tk.Frame(self.master,)
self.face1.pack()
btn_back=tk.Button(self.face1,text='face1back',command=self.back)
btn_back.pack()

defback(self):
self.face1.destroy()
initface(self.master)


if__name__=='__main__':
root=tk.Tk()
basedesk(root)
root.mainloop()

效果展示:

我们如果在继续使用 tkinter控件时候,,可以把以上方式方法给套用住,因为这些内容是我们非常好实用的,大家可以作为累积使用,如果还有其他的疑问,也可以在官网上查询即可。