1. 1.继承 tkinter.Frame 类,实现类的基本写法
  2. 2.创建主窗口及主窗口大小位置及标题
  3. 3.将需要添加的组件放入到类中进行创建,
  4. 继承的 Frame 类需要使用 master 参数作为父类的初始化使用
  5. 4.初始化时,将属性和方法都进行初始化,此时可以将 GUI 程序所要实现的功能确定好
  6. 5.在类中定义事件发生时,需要实现的功能
  7. 6.self.btn1["command"] = self.kuaJiang
  8. btn1["command"] 为事件发生时进行相应的函数
  9. 7.self.btnQuit = Button(self,text = "退出",command = root.destroy)
  10. 退出按钮的写法
  1. from tkinter import *
  2. from tkinter import messagebox
  3. class Application(Frame):
  4. '''GUI程序经典写法'''
  5. def __init__(self,master = None):
  6. super().__init__(master)
  7. # super() 表示父类的定义,父类使用 master 参数
  8. self.master = master
  9. # 子类定义一个属性接收传递过来的 master 参数
  10. self.pack()
  11. # .pack 设置布局管理器
  12. self.createWidget()
  13. # 在初始化时,将按钮也实现
  14. # master传递给父类 Frame 使用后,子类中再定义一个 master 对象
  15. def createWidget(self):
  16. '''创建组件'''
  17. self.btn1 = Button(self)
  18. # self 为组件容器
  19. self.btn1["text"] = "Hany love Python."
  20. # 按钮的内容为 btn1["text"]定义的内容
  21. self.btn1.pack()
  22. # 最佳位置
  23. self.btn1["command"] = self.kuaJiang
  24. # 响应函数
  25. self.btnQuit = Button(self,text = "退出",command = root.destroy)
  26. # 设置退出操作
  27. self.btnQuit.pack()
  28. def kuaJiang(self):
  29. messagebox.showinfo("人艰不拆","继续努力,你是最棒的!")
  30. if __name__ == '__main__':
  31. root = Tk()
  32. # 定义主窗口对象
  33. root.geometry("200x200+200+300")
  34. # 创建大小
  35. root.title("GUI 经典写法")
  36. app = Application(master = root)
  37. # 传递 master 参数为 主窗口对象
  38. root.mainloop()

2020-04-20

Tkinter经典写法的更多相关文章

  1. javascript js表示中文日期的经典写法

    <div id="time"> <script>document.getElementById('time').innerHTML=new Date().t ...

  2. 下拉菜单得经典写法html5

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 操作argc, argv的经典写法

    [问题] 我在看boost源代码的时候看到如下的代码, template<class charT> basic_command_line_parser<charT>:: bas ...

  4. SurfaceView的经典写法

    package com.example.test; import android.content.Context; import android.graphics.Canvas; import and ...

  5. python基础全部知识点整理,超级全(20万字+)

    目录 Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https:// ...

  6. 巩固复习(Hany驿站原创)_python的礼物

    Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https://www ...

  7. Checkbutton基本写法

    1.Checkbutton(self 窗口对象,text 按钮显示内容,variable 绑定变量->一起变化, onvalue 用户点击时得到的值,offvalue 没有点击得到的值) sel ...

  8. Label 组件基本写法

    1.width,height 指定区域大小 文本 汉字 2 个字节 2.font 指定字体和字体大小 font(font_name,size) 3.image 显示在 Label 上的图像 支持 gi ...

  9. 中间自适应,左右定宽的两种经典布局 ---- 圣杯布局 VS 双飞翼布局

    一.引子 最近学了些js框架,小有充实感,又深知如此节奏的前提需得基础扎实,于是回头想将原生CSS和Javascript回顾总结一番,先从CSS起,能集中它的就在基础的布局上,便查阅了相关资料,将布局 ...

随机推荐

  1. Yolo训练自定义目标检测

    Yolo训练自定义目标检测 参考darknet:https://pjreddie.com/darknet/yolo/ 1. 下载darknet 在 https://github.com/pjreddi ...

  2. TCP/IP通信网络基础

    TCP/IP是互联网相关的各类协议族的总称. TCP/IP的分层管理 分层的优点:如果只有一个协议在互联网上统筹,某个地方修改就要把所有的部分整体换掉,采用分层则只需要改变相应的层.把各个接口部分规划 ...

  3. 51Nod 1683 最短路

    题意 给定一个未知的\(0/1\)矩阵,对每个\(i\)求\((1,1)\sim(n,m)\)最短路为\(i\)的概率,在矩阵中不能向左走,路径长度为路径上权值为\(1\)的格子个数. \(n\leq ...

  4. Docker容器和镜像的区别

    docker容器和镜像区别  转自 https://www.cnblogs.com/bethal/p/5942369.html 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(conta ...

  5. 【译】Exception Helper – Rethrown Exceptions

    是否曾经在异步编程时引发过异常?因为调试器没有显示异常发生的位置而感到沮丧?或者在查看具有内部异常的异常时感到沮丧?调试器不容易显示该异常来自何处.从 Visual Studio 2019 16.5 ...

  6. JS学习研究

    //1.undefined 是派生自null的 //alert(undefined == null); //alert(undefined === null); ////结果 true false / ...

  7. Elasticsearch 内存配置应用案例

    Elasticsearch 内存配置 有三个可选项: 你主要做全文检索吗?考虑给 Elasticsearch 4 - 32 GB 的内存, 让 Lucene 通过操作系统文件缓存来利用余下的内存.那些 ...

  8. AutoJS 实现QQ小游戏胡莱三国爬塔

    AutoJS 开发文档参考 环境 安卓QQ 胡莱三国小游戏 AutoJS APP 使用方法 安装AutoJs,打开无障碍模式,进入到胡莱三国小游戏,在Autojs中执行脚本 代码 "auto ...

  9. java 面向对象(三十五):泛型在继承上的体现

    泛型在继承上的体现: /* 1. 泛型在继承方面的体现 虽然类A是类B的父类,但是G<A> 和G<B>二者不具备子父类关系,二者是并列关系. 补充:类A是类B的父类,A< ...

  10. 李航统计学习方法(第二版)(五):k 近邻算法简介

    1 简介 k近邻法的输入为实例的特征向量,对应于特征空间的点;输出为实例的类别,可以取多类.k近邻法假设给定一个训练数据集,其中的实例类别已定.分类时,对新的实例,根据其k个最近邻的训练实例的类别,通 ...