<PY><core python programming笔记>C19 图形用户界面编程
来源:互联网 发布:题库软件哪个好 编辑:程序博客网 时间:2024/05/19 02:00
C19 图形用户界面编程GUI
19.1简介
#python默认GUI工具集是Tk
#Tkinter是默认GUI库,基于Tk
#Tcl是工具命令语言
19.2 Tkinter
19.2.1 运行GUI基本步骤
1.导入Tkinter模块 import Tkinter
2.创建一个顶层窗口对象,来容纳整个GUI程序
# top=Tkinter.Tk()
3.在顶层窗口中创建所有GUI模块及功能
4.把这些GUI模块和底层程序代码相连接
5.进入主事件循环
#Tkinter.mainloop()
#组件可以独立也可以作为容器存在
#事件回调(事件驱动编程)
#两个坐标管理器 packer和grid
#C/S架构,一旦启动,进入服务器式的无限循环
19.2.4 Tk组件(共15个)
Button 按钮(类似标签),提供鼠标掠过、按下、释放以及键盘操作事件
Canvas 画布,提供绘图功能
Checkbutton 选择按钮,一组方框(类似checkbox)
Entry 文本框,单行文字域,用于搜集键盘输入(类似text)
Frame 框架,包含其他组件的纯容器
Label 标签,用于显示文字和图片
Listbox 列表框,一个选项列表,用户可以从中选择
Menu 菜单
Menubutton 菜单按钮,用于包含菜单的组件
Message 消息框,类似标签,但可以显示多行文本
Radiobutton 单选按钮,只有一个可以按下(类似radio)
Scale 进度条,线性“滑块”组件,可以设定初始值和结束值,会显示当前位置精确值
Scrollbar 滚动条,对(文本域,画布,列表框,文本框)提供滚动功能
Text 文本域。多行文字区域,可用来搜集(或显示)用户输入的文字(类似textarea)
Toplevel 顶级。类似框架,但提供一个独立的窗口容器。
#有一大堆默认参数,只需设置你关心的参数,方便开发
19.3举例
#hello.pyimport Tkintertop=Tkinter.Tk()label=Tkinter.Label(top,text='Hello Word!')label.pack()Tkinter.mainloop()#button.pyimport Tkintertop=Tkinter.Tk()quit=Tkinter.Button(top,text='Quit!',command=top.quit)quit.pack()Tkinter.mainloop()#label_button.pyimport Tkintertop=Tkinter.Tk()hello=Tkinter.Label(top,text='Hello Word!').pack()quit=Tkinter.Button(top,text='Quit',command=top.quit,bg='red',fg='white').pack(\ fill=Tkinter.X,expand=1)Tkinter.mainloop()
19.5相关模块
Tk相关
Tkinter
Pmw
Tix
TkZinc(Zinc)
EasyGUI(easygui)
TIDE+(IDE Studio)
wxWidgets相关
wxPython
Boa Constructor
PythonCard
wxGlade
GTK+/GNOME相关
PyGTK
GNOME-Python
Glade
PyGUI(GUI)
Qt/KDE相关
PyQt
PyKDE
eric
PyQtGPL
其他GUI工具集
FXPy
pyFLTK
PyOpenGL
商业软件
win32ui
swing
- <PY><core python programming笔记>C19 图形用户界面编程
- <PY><core python programming笔记>C13 面向对象编程
- <PY><core python programming笔记>C16 网络编程
- <PY><core python programming笔记>C17 网络客户端编程
- <PY><core python programming笔记>C18 多线程编程
- <PY><core python programming笔记>C20 Web编程
- <PY><core python programming笔记>C21 数据库编程
- <PY><core python programming 笔记>C1 概述
- <PY><core python programming笔记>C5 数字
- <PY><core python programming笔记>C12 模块
- <PY><core python programming笔记>C11 函数和函数式编程
- <PY><core python programming笔记>C3 Python基础
- <PY><core python programming笔记>C4 Python对象
- <PY><core python programming笔记>C22 扩展Python
- <PY><core python programming笔记>C2 快速入门
- <PY><core python programming笔记>C7 字典和集合类型
- <PY><core python programming笔记>C8 条件与循环
- <PY><core python programming笔记>C9 文件和输入输出
- Linux的GDB远程调试的实现
- Spring AOP + AspectJ annotation
- 学徒浅析Android开发:第四讲——ImageView图片你的控制
- Hypertable源码解读之RangeServer启动过程
- 调整php和mysql的时间 utc转为北京时间
- <PY><core python programming笔记>C19 图形用户界面编程
- MTU与MSS的比较分析
- AddressSanitizer 内存检测工具
- CentOS下安装LAMP环境
- 黑马程序员_Eclipse快捷键整理
- SpringMVC与Hibernate整合
- IOS开发笔记(12)IOS如何访问通讯录
- 忘记年龄,忘记名利,忘记怨恨,忘记烦恼……
- 俄罗斯方块C语言——参考