python tkinter实现界面切换的示例代码


Posted in Python onJune 14, 2019

跳转实现思路

主程序相当于桌子:

import tkinter as tk
 root = tk.Tk()

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

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

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

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

而对于切换的过程中改变背景颜色和大小,可以通过修改frame控件的属性,或者修改root的属性(桌子的属性)来实现。

具体代码

# -*- 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()

效果图:

python tkinter实现界面切换的示例代码

以上这篇python tkinter实现界面切换的示例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中字典(dict)和列表(list)的排序方法实例
Jun 16 Python
详解Python中的Cookie模块使用
Jul 06 Python
如何使用七牛Python SDK写一个同步脚本及使用教程
Aug 23 Python
Python中绑定与未绑定的类方法用法分析
Apr 29 Python
Python中operator模块的操作符使用示例总结
Jun 28 Python
浅谈Python浅拷贝、深拷贝及引用机制
Dec 15 Python
python+selenium实现简历自动刷新的示例代码
May 20 Python
python实现控制电脑鼠标和键盘,登录QQ的方法示例
Jul 06 Python
简单的Python调度器Schedule详解
Aug 30 Python
Python3+Selenium+Chrome实现自动填写WPS表单
Feb 12 Python
使用matlab 判断两个矩阵是否相等的实例
May 11 Python
使用pycharm和pylint检查python代码规范操作
Jun 09 Python
对Python中TKinter模块中的Label组件实例详解
Jun 14 #Python
对python tkinter窗口弹出置顶的方法详解
Jun 14 #Python
Python 抓取微信公众号账号信息的方法
Jun 14 #Python
python字典一键多值实例代码分享
Jun 14 #Python
Python 窗体(tkinter)按钮 位置实例
Jun 13 #Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
Jun 13 #Python
python tkinter canvas 显示图片的示例
Jun 13 #Python
You might like
通俗易懂的php防注入代码
2010/04/07 PHP
微信营销平台系统?刮刮乐的开发
2014/06/10 PHP
thinkphp5.1框架中容器(Container)和门面(Facade)的实现方法分析
2019/08/05 PHP
JavaScript获取GridView中用户点击控件的行号,列号
2009/04/14 Javascript
一个简单的全屏图片上下打开显示网页效果示例
2014/07/08 Javascript
JavaScript及jquey实现多个数组的合并操作
2014/09/06 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
web 前端常用组件之Layer弹出层组件
2016/09/22 Javascript
快速掌握jQuery插件WebUploader文件上传
2016/11/07 Javascript
Javascript中click与blur事件的顺序详析
2017/04/25 Javascript
快速使用node.js进行web开发详解
2017/04/26 Javascript
JavaScript实现异步图像上传功能
2018/07/12 Javascript
Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网
2019/05/16 Javascript
详解jQuery中的prop()使用方法
2020/01/05 jQuery
[01:36:17]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第一场 1月31日
2021/03/11 DOTA
python批量下载图片的三种方法
2013/04/22 Python
进一步理解Python中的函数编程
2015/04/13 Python
Python加pyGame实现的简单拼图游戏实例
2015/05/15 Python
python中redis的安装和使用
2016/12/04 Python
python numpy元素的区间查找方法
2018/11/14 Python
Linux下远程连接Jupyter+pyspark部署教程
2019/06/21 Python
Python完全识别验证码自动登录实例详解
2019/11/24 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
Python如何发送与接收大型数组
2020/08/07 Python
HTML5 使用 sessionStorage 进行页面传值的方法
2018/07/02 HTML / CSS
使用html5 canvas绘制圆环动效
2019/06/03 HTML / CSS
New delete 与malloc free 的联系与区别
2013/02/04 面试题
《挑山工》的教学反思
2014/02/16 职场文书
乡镇组织委员个人整改措施
2014/09/16 职场文书
房屋租赁协议书
2014/10/18 职场文书
酒店前台接待岗位职责
2015/04/02 职场文书
试用期旷工辞退通知书
2015/04/17 职场文书
初中化学教学反思
2016/02/22 职场文书
个人房屋租赁合同(标准范本)
2019/09/16 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
为什么你写的height:100%不起作用
2021/05/10 HTML / CSS