Python GUI编程—Tkinter的常用控件

图形用户界面(Graphical User Interface),简称GUI,指采用图形方式显示的计算机操作用户界面。Python提供了多个GUI库,常用的有Tkinter,wxPython以及Jython,其中Tkinter模块儿(TK接口)是Python标准TK GUI工具包的接口,这里只介绍Tkinter模块儿,注:Python2.7ttk是直接导入的,ttk是自己的包,Python3.x版本都改为tkinter,t小写,ttk是包含在tkinter里面。

一、Tkinter编程

  1. 导入Tkinter模块儿(或 from Tkinter import*)
  2. 创建顶层窗口对象,用于容纳GUI, eg:top = Tkinter.Tk(),top为根窗口,frame = Tkinter.Frame(top),frame是顶层窗口
  3. 在顶层窗口对象中构建所有GUI组件及其功能
  4. 通过底层应用代码将这些GUI组件连接起来
  5. 进入mainloop()事件循环

下面示例代码:在Tkinter实例化中进行3、4步。

import Tkinter
#弹窗信息
from tkMessageBox import showinfo

class App:
    #初始化,传入顶层窗口参数
    def __init__(self,top=None):
        #Button控件
       self.hi_there=Tkinter.Button(top,text='Hi',fg='blue',command=self.say_hi)
       #三种布局管理器,最原始的Placer,网格坐标Grid,以及常用的Packer
       self.hi_there.pack(side=Tkinter.TOP)
    def say_hi(self):
        showinfo(title='Hi',message='Hello, welcome to the GUI world!')
if __name__ == '__main__':
    #创建根窗口对象
    top=Tkinter.Tk()
    #Tkinter实例化
    app=App(top)
    #进入事件循环
    top.mainloop()

注:3,4步骤是混合使用的;顶层窗口可以有多个,但是根窗口只能有一个

1、根窗体对象的常用函数:

  • top.title('标题'):修改窗体名字
  • top.geometry('500x500'):窗体对象的大小
  • top.quit():退出
  • top.update():刷新页面
  • ...

2、pack控件设置位置属性参数:

  • anchor:控件对齐方式,N、E、S、W、NW、NE、SW、SE、CENTER(默认值为CENTER)
  • side:控件在窗体的相对位置,LEFT,RIGHT,TOP,BOTTOM
  • fill:控件填充方式,X水平,Y垂直,BOTH水平和垂直,NONE不填充
  • expand:1可扩展,0不可扩展
  • ...

二、常用控件

在Tkinter中,每个组件都是一个类,上面第三步构建某个组件实际上是将该类进行实例化,在实例化过程中,

控件 描述
Button 按钮控件,与Label相似,除此之外提供鼠标悬浮,按下,释放以及键盘活动/事件
Canvas 画布控件;显示图形元素如线条或文本
CheckButton 多选框控件;用于在程序中提供多项选择框(与Html的checkbox类似)
Entry 输入控件;用于收集键盘输入
Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器
Label 标签控件;可以显示文本和位图
Listbox 列表框控件;在Listbox窗口小部件是用来显示一个字符串列表给用户
Menubutton 菜单按钮控件,用于显示菜单项。
Menu 菜单控件;按下MenuButton后弹出的选项列表,显示菜单栏,下拉菜单和弹出菜单
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值