Python gui开发之tkinter
2015-10-17 07:34
639 查看
tk inter
第一个窗口
当前线程调用mainloop()后变进入事件循环,后面代码被阻塞。
想创建多个窗口的话
++上面代码有时会导致界面卡死,推荐把ui操作放在同一线程中,创建多窗口用 Toplevel()
在mainloop线程中多次调用Tk().mainloop()不会造成卡死(可以创建多窗口,且mainloop线程数不会增加)
创建按钮
relXX属性代表与主窗口大小的相对值 0~1
事件处理
还可以在创建按钮的时候直接绑定回调方法 Button(top, command=foo) 事件回调的时候没有event对象,不能操作触发按钮,不推荐使用。
第一个窗口
from Tkinter import * Tk().mainloop()
当前线程调用mainloop()后变进入事件循环,后面代码被阻塞。
想创建多个窗口的话
from Tkinter import * from threading import * for i in range(5): Thread(target=Tk().mainloop).start() print 2333 sys.stdout.flush() #2333
++上面代码有时会导致界面卡死,推荐把ui操作放在同一线程中,创建多窗口用 Toplevel()
在mainloop线程中多次调用Tk().mainloop()不会造成卡死(可以创建多窗口,且mainloop线程数不会增加)
创建按钮
relXX属性代表与主窗口大小的相对值 0~1
from Tkinter import * top=Tk() b=Button(top,text='click') b.place(relx=0, rely=0.5, relwidth=1, relheight=0.1) top.mainloop()
事件处理
from Tkinter import * top=Tk() b=Button(top,text='click') b.place(relx=0, rely=0.5, relwidth=1, relheight=0.1) def foo(event): btn=event.widget btn['text']='clicked!' b.bind('<Button>',foo) top.mainloop()
还可以在创建按钮的时候直接绑定回调方法 Button(top, command=foo) 事件回调的时候没有event对象,不能操作触发按钮,不推荐使用。
相关文章推荐
- Python包安装
- Python游戏引擎开发(三):显示图片
- 《Python入门》学习笔记之Golang
- python3 遍历文件
- <LeetCode><Easy> 9 Palindrome Number
- python numpy.tile函数
- python+pygame游戏开发之使用Py2exe打包游戏
- Learning Python
- <LeetCode><Easy> 7 Reverse Interger
- <LeetCode><Easy> 6 ZigZag Conversion
- Python 3.x标准模块库目录
- Python--装饰器
- 系列篇:Python3.x那些事儿
- Learning Python(1)--操作文件和目录
- python核心编程 7-14
- Flask基本结构(一)
- python核心编程 习题7-10
- python利用basemap叠加地图
- Python学习之列表排序
- AIX 7.1 install python