Python tkinter模块中类继承的三种方式分析
作者:罗兵 发布时间:2023-07-19 22:00:48
标签:Python,tkinter
本文实例讲述了Python tkinter模块中类继承的三种方式。分享给大家供大家参考,具体如下:
tkinter class继承有三种方式。
提醒注意这几种继承的运行方式
一、继承 object
1.铺tk.Frame给parent:
说明:
self.rootframe = tk.Frame(parent)
tk.Label(self.rootframe)
import tkinter as tk
class MyApp(object):
def __init__(self, parent):
self.rootframe = tk.Frame(parent)
self.rootframe.pack()
self.setupUI()
def setupUI(self):
tk.Label(self.rootframe, text='标签').pack()
if __name__ == '__main__':
root = tk.Tk()
MyApp(root) # 注意这句
root.mainloop()
2.直接使用root
说明:
self.root = parent
tk.Label(self.root)
import tkinter as tk
class MyApp(object):
def __init__(self, parent, **kwargs):
self.root = parent
self.root.config(**kwargs)
self.setupUI()
def setupUI(self):
tk.Label(self.root, text = '标签').pack()
if __name__ == '__main__':
root = tk.Tk()
app = test(root)
root.mainloop()
二、继承 tk.Tk
import tkinter as tk
class MyApp(tk.Tk):
def __init__(self):
super().__init__()
self.setupUI()
def setupUI(self):
tk.Label(self, text='标签').pack()
if __name__ == '__main__':
MyApp().mainloop()
三、继承 tk.Frame
分两种情况
1.有parent
import tkinter as tk
class MyApp(tk.Frame):
def __init__(self, parent=None):
super().__init__(parent)
self.pack()
self.setupUI()
def setupUI(self):
tk.Label(self, text='标签').pack()
if __name__ == '__main__':
MyApp(tk.Tk()).mainloop()
#MyApp().mainloop() # 也可以这样
注意: self.pack()
2.没有parent
import tkinter as tk
class MyApp(tk.Frame):
def __init__(self):
super().__init__()
self.pack()
self.setupUI()
def setupUI(self):
tk.Label(self, text='标签').pack()
if __name__ == '__main__':
MyApp().mainloop()
希望本文所述对大家Python程序设计有所帮助。
0
投稿
猜你喜欢
- 随机背景--当你每次进入该页面时,从已指定的图片文件夹中,随机选取一个图片作为背景显示。这里介绍的方法是用ASP+CSS来实现的。 &nbs
- 一、%号占位符这是一种引入最早的一种,也是比较容易理解的一种方式.使用方式为:1、格式化字符串中变化的部分使用占位符2、变量以元组形式提供3
- 无限分类是实际开发中经常用到的一种数据结构,一般我们称之为树形结构。题设:类似淘宝的商品分类,可以在任意分类设置其子类。 一、创建
- Why use Sockets?套接字是网络的基础。它们使在两个不同程序或设备之间的信息传输成为可能。例如,当您打开浏览器时,您作为客户端正
- 使用python生成随机验证码的方法有很多种,今天小编给大家分享两种方法,大家可以灵活运用这两种方法,设计出适合自己的验证码方法。方法一:利
- 关于substr、substring和slice方法区别的文章,网上搜到了许多,文章内容也基本一致。而后,我将其中一篇文章中的代码挪到本地进
- 向量空间模型VSM:VSM的介绍:一个文档可以由文档中的一系列关键词组成,而VSM则是用这些关键词的向量组成一篇文档,其中的每个分量代表词项
- 此文章主要向大家讲述的是SQL Server数据库的分布式数据库系统的实际目标,通俗的讲就是研制分布式数据库系统的目的、动机,其中主要包括的
- 图形检测在计算机视觉开发中是一项非常重要的操作,算法通过对图像的检测,分析出图像中可能存在哪些形状。除此之外,除了让计算机识别轮廓之外,轮廓
- ASP结合ADO对数据库方便快捷的访问、结合XML、COM/ActiveX等其它技术 实现服务器多层结构的功能使它在今天还有着顽强的生命力。
- 在实际处理数据时,因系统内存有限,我们不可能一次把所有数据都导出进行操作,所以需要批量导出依次操作。为了加快运行,我们会采用多线程的方法进行
- 以下以CentOS 7.2为例,安装php的运行环境,首先打开php官网http://php.net/点击导航栏的Downloads进入下载
- 详解python里使用正则表达式的全匹配功能python中很多匹配,比如搜索任意位置的search()函数,搜索边界的match()函数,现
- 本文实例讲述了PHP自定义函数格式化json数据的方法。分享给大家供大家参考,具体如下:<?php /**
- 介绍:SQL Server 2008变更数据捕获SQL Server 2008的CDC函数读取激活了CDC的每个表所关联的事务日志来记录系统
- python开发中经常遇到报错的情况,但是warning通常并不影响程序的运行,而且有时特别讨厌,下面我们来说下如何忽略warning错误。
- 用Pyinstaller封装一个py文件时,过程没有问题,但打开后会出现闪退的现象。因此上网找,找到了上面网址所示的解决方法。也就是用cmd
- 你是不是在学习python的时候在使用虚拟机系统进行开发,来回切换很是不方便,那么今天给大家推荐一个pycharm强大的功能。接下来我们利用
- 我们做WEB程序开发过程中,经常会为了表格Table中的cellSpacing,cellpadding等样式的设置发愁,经常没有办法可想了,
- 前言无论是自己要在精心P过的自拍上添加个性文字,或者是摄影爱好者要在拍摄的作品里添加水印,亦或是在网页或者移动应用中实时生成文字和图片的组合