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读取Excel的方法实例分析
Jul 11 Python
Python的包管理器pip更换软件源的方法详解
Jun 20 Python
python将unicode转为str的方法
Jun 21 Python
python:pandas合并csv文件的方法(图书数据集成)
Apr 12 Python
python获取文件真实链接的方法,针对于302返回码
May 14 Python
python使用magic模块进行文件类型识别方法
Dec 08 Python
python3编写ThinkPHP命令执行Getshell的方法
Feb 26 Python
python爬虫模拟浏览器访问-User-Agent过程解析
Dec 28 Python
浅谈python之自动化运维(Paramiko)
Jan 31 Python
pandas.DataFrame.drop_duplicates 用法介绍
Jul 06 Python
基于tensorflow权重文件的解读
May 26 Python
Python爬虫基础初探selenium
May 31 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
mysql5的sql文件导入到mysql4的方法
2008/10/19 PHP
PHP include任意文件或URL介绍
2014/04/29 PHP
phpMyAdmin安装并配置允许空密码登录
2015/07/04 PHP
php用户注册信息验证正则表达式
2015/11/12 PHP
JavaScript 事件对象的实现
2009/07/13 Javascript
基于JQuery的6个Tab选项卡插件
2010/09/03 Javascript
JavaScript 放大镜 移动镜片效果代码
2011/05/09 Javascript
基于jQuery替换table中的内容并显示进度条的代码
2011/08/02 Javascript
new Date()问题在ie8下面的处理方法
2014/07/31 Javascript
JS实现带鼠标效果的头像及文章列表代码
2015/09/27 Javascript
javascript加载xml 并解析各节点的值(实现方法)
2016/10/12 Javascript
javascript判断firebug是否开启的方法
2016/11/23 Javascript
微信小程序 wx:for的使用实例详解
2017/04/27 Javascript
javaScript 逻辑运算符使用技巧整理
2017/05/03 Javascript
Three.js实现浏览器变动时进行自适应的方法
2017/09/26 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
轻量级JS Cookie插件js-cookie的使用方法
2018/03/22 Javascript
解决JavaScript中0.1+0.2不等于0.3问题
2018/10/23 Javascript
react-native滑动吸顶效果的实现过程
2019/06/03 Javascript
Vue 图片压缩并上传至服务器功能
2020/01/15 Javascript
[02:19]DOTA选手解说齐贺岁
2018/02/11 DOTA
Python实现截屏的函数
2015/07/25 Python
wxpython中Textctrl回车事件无效的解决方法
2016/07/21 Python
Python实现的购物车功能示例
2018/02/11 Python
numpy matrix和array的乘和加实例
2018/06/28 Python
Django处理多用户类型的方法介绍
2019/05/18 Python
python获取栅格点和面值的实现
2020/03/10 Python
Python3 pickle对象串行化代码实例解析
2020/03/23 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
2020/06/04 Python
pycharm 配置svn的图文教程(手把手教你)
2021/01/15 Python
Speedo速比涛德国官方网站:世界领先的泳装品牌
2019/08/26 全球购物
荷兰度假屋租赁网站:Aan Zee
2020/02/28 全球购物
小学三年级学生评语
2014/04/22 职场文书
校长个人总结
2015/03/03 职场文书
中英文求职信范文
2015/03/19 职场文书
社区法制宣传月活动总结
2015/05/07 职场文书