2021-07-11 Python基础知识——GUI编程

一、关于GUI用户界面编程的概述:GUI——图形用户界面编程,又称为图形化用户接口 GUI编程类似于“搭积木”,将一个个组件(widget)放到窗口当中。 窗口当中有各式各类的组件,例如:按钮、菜单、编辑区……,并通过增加“对事件的处理”成为一个完整的程序。二、常用的GUI库有:Tkinter、wxPython、PyQT……我们现在只学Tkinter库,因为其是python标准的GUI库,支持跨平台的GUI程序开发,同时其适合小型的GUI程序编程。#基于tkinter模块创建GUI程序包含
摘要由CSDN通过智能技术生成

目录

一、关于GUI用户界面编程的概述:

二、常用的GUI库有:Tkinter、wxPython、PyQT……

#Tkinter库

1、常用方法: mainloop()主事件循环执行

2、执行步骤:

3、常用组件

4、组件属性:每个组件都有自己的属性和方法

5、Canvas组件

6、事件( Event)

7、事件驱动

8、事件处理

9、绑定

10、事件队列和事件类型

11、弹球游戏


一、关于GUI用户界面编程的概述:

  • GUI——图形用户界面编程,又称为图形化用户接口
  • GUI编程类似于“搭积木”,将一个个组件(widget)放到窗口当中。
  • 窗口当中有各式各类的组件,例如:按钮、菜单、编辑区……,并通过增加“对事件的处理”成为一个完整的程序。
  • 人们不需要记忆和输入繁琐的命令,可以直接通过鼠标或者是键盘操作界面。

二、常用的GUI库有:Tkinter、wxPython、PyQT……

#Tkinter库

  • 其是python标准的GUI库,支持跨平台的GUI程序开发,同时其适合小型的GUI程序编程
  • 缺少合适的可视化界面设计工具
  • 需要编写代码完成窗口的布局和设计

1、常用方法: mainloop()主事件循环执行

2、执行步骤:

  • 导入Tkinter模块: from Tkinter import * 或者是  import Tkinter
  • 创建GUI应用程序的主窗口: tk = Tkinter.Tk()
  • 添加各种组件
  • 进入主事件循环的由用户触发每个事件响应

3、常用组件

常见的GUI组件
组件 中文名称 具体描述
Canvas 画布 提供了绘图功能,可以包含图形或者是位图,实现定制窗口组件
Button 按钮 具有鼠标掠过、按下、释放以及键盘操作事件
Label 标签 显示文字或者图片
Entry 文本框 单行文字区域,收集键盘输入
Text 文本域 多行文字区域,收集或显示用户输入的文字
CheckButton 多选框 一组方框,可以选择多项
Radiobutton 单选框 一组按钮,只能选择一项
Menu 菜单 点击菜单弹出一个选项列表供用户选择
Menubutton 菜单按钮 包含下拉式、层叠式
Listbox 列表框 一个选项列表,用户可从中选择
Scale 进度条 可设定起始值和结束值,能显示当前位置的精确值
Scrollbar 滚动条 对其支持的组件(画布、文本框、文本域、列表框)提供滚动的功能
Frame 框架 包含其他组件的纯容器
Toplevel 顶级容器 类似框架,但是提供了一个独立的窗口容器

4、组件属性:每个组件都有自己的属性和方法

布局管理器:

  • pack():将组件包装到一个父组件当中,然后创建一个版面
  • gird():通过二维网格组织窗口组件创建一个类似表的版面
  • place():显式将一个窗口组件放到指定的位置

共用的一些属性:

  • Dimensions:长度、宽度
  • Colors:颜色
  • Fonts:字体
  • Anchors:定义文本的相对位置
  • Relief styles:组件的样式
  • Bitmaps:位图
  • Cursors:光标

5、Canvas组件

  • 一个长方形的容器,可以在其中放置图形、文字、组件或者是帧
  • 创建画布: canvas = Canvas(master,options=value,...)  
  • 参数master:代表父窗口
  • 参数options:设置画布的属性
  • 在画布上面可以创建和绘制各种图形
  • 常用属性 具体描述
    bd

    边框的宽度,以像素为单位,默认为2

    bg 背景颜色
    confine 默认值为ture时,画布没有滚动条
    cursor 画布中光标的形状,arrow,circle,dot
    height 高度
    width 宽度
    fill 填充色
  • 常用方法 具体描述
    create_arc() 创建弧线,和弦、饼图扇区、简单的弧线
    create_image() 创建一个图像,位图图像或者是照片图像类的一个实例
    create_line() 创建一条直线
    create_oval() 在指定的坐标上绘制一个圆形或者是椭圆形
    create_polygon() 绘制一个多边形(3个顶点以上)
    create_rectangle() 绘制一个矩形
#在画布上画一个正方形
from tkinter import *                     #导入ktinter模块
tk = Tk()                                 #创建tkinter对象
canvas = Canvas(tk,width=400,height=400)  #tk为父窗口,设置画布的长度和宽度
canvas.pack()                             #布局管理器
canvas.create_rectangle(50,50,100,100)    #设置左上方顶点坐标和右下角顶点坐标                                            
tk.mainloop()                             #主事件循环执行
#在画布上画一个有颜色的长方形
from tkinter import *                           #导入ktinter模块
tk = Tk()                                       #创建tkinter对象
canvas = Canvas(tk,width=400,height=400)        #tk为父窗口,设置画布的长度和宽度
canvas.pack()                                   #布局管理器
p1 = 10,50                         
  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值