Tkinter

382 阅读1分钟

GUI介绍

  • Tkinter
    • 绑定的是TK GUI工具集,用途python包装的Tcl代码
#案例
import tkinter
base = tkinter.TK()
#消息循环
base.mainloop()

Tkinter常营组件

  • 按钮
    • Button 按钮组件
    • RadioButton 单选框组件
    • CheckButton 选择按钮组件
    • Listbox 列边框组件
  • 文本输入组件
    • Entry 单行文本框组件
    • Test 多行文本框组件
  • 标签组件
    • Label 标签组件,中可以显示图片和文字
    • Message 标签组件,可以根据内容将文字换行
  • 菜单
    • Menu 菜单组件
    • MenuButton 菜单按钮组件,可以使用Menu代替
  • 滚动条
    • Scale 滑块组件
    • Scrollbar 滚动条组件
  • 其他组件
    • Canvas 画布组件
    • Frame 框架组件,将多个组件编组
    • Toplevel 创建子窗口容器组件

组件的大致使用步骤

  • 创建总面板
  • 创建面板上的各种组件
    • 指定组件的父组件,即依附关系
    • 利用相应的属性对组件进行设置
    • 给组件安排布局
  • 步骤2相似,创建好多个组件
  • 最后,启动总面板的消息循环

组件布局

  • 控制组件的摆放方式
  • 三种布局
    • pack:按照方位布局
    • place:按照坐标布局
    • grid:网格布局
  • pack布局
    • 最简单,代码量最少,挨个摆放
    • 通用使用方式为:组件对象.pack(设置...)
  • grid布局
    • 通用的使用方式:组件对象.grid(设置...)
  • place布局
    • 明确方位的缩放

消息机制

  • 消息的传递机制
    • 自动发出事件\消息
    • 消息由系统负责发送到队列
    • 由相关组件进行绑定/设置
    • 后端自动选择感兴趣十位事件并作出相应的反应