tk官网的教程学习:http://www.tkdocs.com/tutorial/firstexample.html

#导入tkinter模块,以及导入ttk模块,tkinter是python结合tk的标准接口,ttk是TK8.5之后加入的“主题化工具包”
from tkinter import *
from tkinter import ttk#定义的计算函数,完成英尺到米的换算
def calculate(*args):try:value = float(feet.get())meters.set((0.3048 * value * 10000.0 + 0.5)/10000.0)except ValueError:pass'''
创建了一个主窗口;
主窗口标题为:“Free to Meters”
通过ttk.Frame创建了一个框架容器;所以界面内容都放在框架中,并把框架放在主窗口root中;
通过grid指定框架的位置,以及对齐方式:sticky说明使用罗盘式方位,控件将要如何在网格单元格里排放(NWES分别表示上左右下);
columnconfigure方法告诉tk自适应宽度;
rowconfigure方法告诉tk自适应高度
'''
root = Tk()
root.title("Feet to Meters")
mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
mainframe.columnconfigure(0, weight=1)
mainframe.rowconfigure(0, weight=1)feet = StringVar()
meters = StringVar()feet_entry = ttk.Entry(mainframe, width=7, textvariable=feet)
feet_entry.grid(column=2, row=1, sticky=(W, E))ttk.Label(mainframe, textvariable=meters).grid(column=2, row=2, sticky=(W, E))
ttk.Button(mainframe, text="Calculate", command=calculate).grid(column=3, row=3, sticky=W)ttk.Label(mainframe, text="feet").grid(column=3, row=1, sticky=W)
ttk.Label(mainframe, text="is equivalent to").grid(column=1, row=2, sticky=E)
ttk.Label(mainframe, text="meters").grid(column=3, row=2, sticky=W)'''
检查框架内的所有控件,并在每个控件之间增加一点距离,使他们看起来没那么拥挤;
告诉tk把注意力转移到我们的输入框上;也就是说在开始的时候,光标默认会在输入框,当用户输入的时候不需要去单击
告诉tk用户按下了回车键和单击计算按钮是一样的,会调用计算程序段
'''
for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5)
feet_entry.focus()
root.bind('<Return>', calculate)#tk让他的事件循环,这样才能让所有的事件运行
root.mainloop()

忘记了什么?
这里还有一些值得检查而我们没有在Tk程序中包括的。例如:
·我们没有考虑当事件改变时重绘界面
·我们没有考虑评价发送事件消息,捕获监测,或者在每个空间上处理事件
·在创建控件的时候,我们没有提供更多的选项;默认看起来已经关注了很多事情,并且我们仅仅改变了按钮上的显示文本。
·我们没有写复杂的代码来获取和设定简单控件的值,我们仅仅把它们链接到变量
·我们没有考虑当用户关闭窗口或者改变窗口大小后会发生什么
·我们没有写额外的代码让它能够跨平台工作

python3 tkinter教程相关推荐

  1. [译][Tkinter 教程02] Message 控件

    已获原作者授权. 原系列地址: Python Tkinter Message 控件 Message 控件用来展示一些文字短消息. Message 和 Label 控件有些类似, 但在展示文字方面比 L ...

  2. [译][Tkinter 教程15] event 事件绑定

    已获原作者授权. 原系列地址: Python Tkinter 简介 一个 Tkinter 应用生命周期中的大部分时间都处在一个消息循环 (event loop) 中. 它等待事件的发生: 事件可能是 ...

  3. [译][Tkinter 教程10] Text 控件

    已获原作者授权. 原系列地址: Python Tkinter 简介及简例 Text 控件用来显示多行文本. Tkinter 的 Text 控件很强大, 很灵活, 可以实现很多功能. 虽然这个控件的主要 ...

  4. python3教程-终于清楚python3详细教程

    跟Java语言一样,python语言也有类的概念,直接使用class关键字定义python类.在python类,定义类的方法.然后直接使用类的初始化调用自身,获取相应的属性.以下是小编为你整理的pyt ...

  5. Python3 简明教程

    课程简介:简明易懂的 Python3 课程,不仅适用于那些有其它语言基础的同学,对没有编程经验的同学也非常友好.本课程不仅讲解了 Python3 基础知识,还介绍了 PEP8.Virtualenv.测 ...

  6. [译][Tkinter 教程14] menu 菜单

    已获原作者授权. 原系列地址: Python Tkinter 简介 一提到"menu"这个词, 很多人首先想到的是餐馆里的菜单. 虽然餐馆菜单和计算机程序中的菜单看起来一点也不像, ...

  7. python3+tkinter实现的黑白棋,代码完整 100%能运行

    今天分享给大家的是采用Python3+tkinter制作而成的小项目--黑白棋 tkinter是Python内置的图形化模块,简单易用,一般的小型UI程序可以快速用它实现,具体的tkinter相关知识 ...

  8. tkinter教程4:控件LabelFrame和Entry

    tkinter教程4:控件LabelFrame和Entry 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: python版本:3.5 开发环境: ...

  9. Tk 的基本概念-组件—Tkinter 教程系列03

    Tk 的基本概念-组件-Tkinter 教程系列03 购物返利 https://m.cpa5.cn/ 前言 Tk 系列教程: Tkinter教程系列01--引言和安装Tk Tkinter教程系列02- ...

  10. python3简明教程第二版答案_Python3 简明教程

    课程简介:简明易懂的 Python3 课程,不仅适用于那些有其它语言基础的同学,对没有编程经验的同学也非常友好.本课程不仅讲解了 Python3 基础知识,还介绍了 PEP8.Virtualenv.测 ...

最新文章

  1. oracle pl sql注意问题,Oracle PL/SQL编写PL/SQL代码的注意事项
  2. 三种提取 网卡的方法
  3. yolo类检测算法解析——yolo v3
  4. zigbee看门狗综合实验_2.5KW风光互补发电教学实验系统,风能太阳能发电实训装置_搜狐汽车...
  5. 新康众闫顺成:数据中台建设中的得与失
  6. VC控件 Tab Control
  7. Linux信号的使用
  8. python课本第二章答案_《Python自然语言处理》答案第一、二章
  9. php打印出函数的内容吗,PHP打印函数集合详解以及PHP打印函数对比详解(精)
  10. 8.深度学习练习:Gradient Checking
  11. 一个工作了两三年程序员的学习计划
  12. 从零开始刷Leetcode——数组(189.217.219)
  13. JAVA大写金额转小写金额过程
  14. CSJ加人|cs如何加人|cs加人快捷键
  15. ES笔记_转自尚硅谷_其中有JAVA操作_ES
  16. nim语言教程(一)
  17. python多图片合并pdf_Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
  18. bootstrap4和bootstrap3的区别
  19. JavaScript画中画API
  20. 武汉坚守第六十三天——七九已满疫未退,印度大法上棍棒

热门文章

  1. 【前端】倒计时、秒杀、定时器
  2. 单片机原理及应用程序c语言版题库,单片机原理及应用期末考试试题
  3. 锐捷服务器端口映射教程,锐捷路由器端口映射,路由器端口映射
  4. matlab液压仿真实例,基于MATLAB-simulink的液压系统动态仿真.pptx
  5. 第一次的爬虫小试(爬取网页文本)
  6. linux添加自己的键盘映射,linux下修改键盘映射
  7. 使用VC2005编译静态应用程序的方法
  8. 2018-2019 C++期末复习资料
  9. 打开cad图纸计算机打不开,cad图纸打不开怎么办?cad打开图纸致命错误的解决办法...
  10. dos盘启动计算机,u盘制作dos启动盘方法