今天和大家分享一下tkinter桌面编程开发的心得。
什么是TK\Tkinter
Tkinter是连接Python和TK图形库的一个纽带(接口)
Hello Tkinter
View Code
Hello tkinter扩展
View Code
GUI类库设计架构-Tkinter架构
UI的结构底层的容器窗体:root window,在root上面就会有一些容器的UI,在UI的上面又会有一些其他的UI
分类:
widget(显示)
WM(管理:窗体的显示,添加,例如pack()),
event(事件传导机制):输入事件,状态事件(鼠标的挪进挪出),管理事件(窗体的生命周期的消亡)
详细的窗体的文本:http://effbot.org/tkinterbook/tkinter-classes.htm
config配置外观
View Code
widget style组件外观属性
http://effbot.org/tkinterbook/tkinter-widget-styling.htm 在这个网站上有可以配置的外观属性,上去查阅就行
View Code
事件Events 和 Bindings
事件的分类
enentformats:<Button-1>点击左键<Button-2>点击右键<B1-Motion>左键移动<ButtonRelease-1>左键释放<Double-Button-1>双击左键<Enter>进入<Leave>离开<FocusIn><FocusOut><Return><Key>
enent attributes:widget,x,y,x_root,y_root,keycode(),num(),width,height,type
protocol
实现事件方式
command 按钮级别
bind(绑定) 按钮级别
protacl(协议监听)系统级别
View Code
BaseWindow-TopLevel
在一个窗体上面弹出一个新的窗体:依靠TopLevel
View Code
c菜单
View Code
工具栏
ToolBar
View Code
MessageBox
python中导入tkmessageBox需要这样导入 import tkinter.messagebox
View Code
状态栏--StatusBar
View Code
学习完桌面编程之后,决定自己写一个简单的记事本来练练手,熟悉熟悉学的东西,深入理解一下。
项目简要分析
界面实现:menu,statusbar,text,toolbar,thinter.messagebox,tkFileDialog
功能实现:text相关操作,文件读写操作
菜单的实现
View Code
实现toolbar
View Code
显示状态栏
View Code
正文编辑区域Text和Scrollbar
View Code
关于about信息的实现
View Code
文件操作
新的库的学习:File Dialogs 地址:effbot.org/tkinterbook/tkinter-file-dialogs.htm
askopenfilename和asksaveasfilename:打开和保存操作。
View Code
复制粘贴操作
存在于event generate,存在于Tk库中 ,源码地址:http://www.tcl.tk/man/tcl8.5/TkCmd/event.htm
View Code
全选和查找
View Code
原文来自:博客园/Kobe10