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

2025-12-01 0 49,678

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

主程序相当于桌子:

import tkinter as tk
root = tk.Tk()

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

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

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

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

具体代码:

# -*- coding: utf-8 -*-
"""
Created on Tue Oct 16 11:15:01 2018
Description:tkinter界面切换
Version:
 
@author: HJY
"""
import tkinter as tk
 
 
class basedesk():
 def __init__(self,master):
 self.root = master
 self.root.config()
 self.root.title('Base page')
 self.root.geometry('200x200')
 
 initface(self.root)
 
class initface():
 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()
 
 def change(self,):
 self.initface.destroy()
 face1(self.master)
 
class face1():
 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='face1 back',command=self.back)
 btn_back.pack()
 
 def back(self):
 self.face1.destroy()
 initface(self.master)
 
 
if __name__ == '__main__':
 root = tk.Tk()
 basedesk(root)
 root.mainloop()

效果展示:

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

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:以上部本文内容由互联网用户自发贡献,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。投诉邮箱:3758217903@qq.com

ZhiUp资源网 python基础 如何实现python tkinter控件随窗口变化? https://www.zhiup.top/3763.html

相关