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原始套接字编程示例分享
Feb 21 Python
Python-基础-入门 简介
Aug 09 Python
在Python的Django框架中显示对象子集的方法
Jul 21 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
Apr 18 Python
详解python实现交叉验证法与留出法
Jul 11 Python
Python-接口开发入门解析
Aug 01 Python
Python实现TCP通信的示例代码
Sep 09 Python
使用python制作游戏下载进度条的代码(程序说明见注释)
Oct 24 Python
pytorch获取模型某一层参数名及参数值方式
Dec 30 Python
jupyter notebook 重装教程
Apr 16 Python
Tensorflow tf.nn.atrous_conv2d如何实现空洞卷积的
Apr 20 Python
Python同时处理多个异常的方法
Jul 28 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 5.2.14+fpm+memcached(具体操作详解)
2013/06/18 PHP
php 判断网页是否是utf8编码的方法
2014/06/06 PHP
ThinkPHP3.2.2实现持久登录(记住我)功能的方法
2016/05/16 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
使用prototype.js进行异步操作
2007/02/07 Javascript
IE不出现Flash激活框的小发现的js实现方法
2007/09/07 Javascript
一个javascript图片阅览组件
2010/11/09 Javascript
JavaScript?Apple设备检测示例代码
2013/11/15 Javascript
js调试工具Console命令详解
2014/10/21 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
2016/04/17 Javascript
javascript实现滚动效果的数字时钟实例
2016/07/21 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
JS库particles.js创建超炫背景粒子插件(附源码下载)
2017/09/13 Javascript
Vue动态获取width的方法
2018/08/22 Javascript
js实现简单模态框实例
2018/11/16 Javascript
解决layer.confirm快速点击会重复触发事件的问题
2019/09/23 Javascript
vue props 单项数据流实例分享
2020/02/16 Javascript
NodeJS配置CORS实现过程详解
2020/12/02 NodeJs
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
[06:15]2016国际邀请赛中国区预选赛单车采访:我顶WINGS
2016/06/27 DOTA
python实现将pvr格式转换成pvr.ccz的方法
2015/04/28 Python
Python 迭代器与生成器实例详解
2017/05/18 Python
Python批量提取PDF文件中文本的脚本
2018/03/14 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
Django处理Ajax发送的Get请求代码详解
2019/07/29 Python
基于python3的socket聊天编程
2020/02/17 Python
Python导入父文件夹中模块并读取当前文件夹内的资源
2020/11/19 Python
ASP.NET Core中的配置详解
2021/02/05 Python
使用CSS3中的calc()属性来以算式表达尺寸数值
2016/06/06 HTML / CSS
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
追悼会子女答谢词
2014/01/28 职场文书
交通安全教育制度
2014/02/02 职场文书
销售人员职业生涯规划范文
2014/03/01 职场文书
入门学习Go的基本语法
2021/07/07 Golang
教你win10系统中APPCRASH事件问题解决方法
2022/07/15 数码科技