Python图像界面gui编程tkinter实例代码大全.docx
- 文档编号:24871228
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:33
- 大小:20.72KB
Python图像界面gui编程tkinter实例代码大全.docx
《Python图像界面gui编程tkinter实例代码大全.docx》由会员分享,可在线阅读,更多相关《Python图像界面gui编程tkinter实例代码大全.docx(33页珍藏版)》请在冰豆网上搜索。
Python图像界面gui编程tkinter实例代码大全
Python图像界面gui编程tkinter实例代码大全
Python这门编程语言越来越火爆,有碾压其他所有编程语言,比如Java,C,C#之势,python代码简洁,入门容易,但是由于python的gui界面不能直接拖动实现,所以学好tkinter是成为python高手的关键。
下面是我整理的tkinter最重要的一些实例代码,希望对python爱好者有所贡献。
简单实例
importtkinter
#创建主窗口
win=tkinter.Tk()
#设置标题
win.title("yudanqu")
#设置大小和位置
win.geometry("x++")
#进入消息循环,可以写控件
win.mainloop()
Label控件
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
Label:
标签控件,可以显示文本
#win:
父窗体
#text:
显示的文本内容
#bg:
背景色
#fg:
字体颜色
#font:
字体
#wraplength:
指定text文本中多宽之后换行
#justify:
设置换行后的对齐方式
#anchor:
位置n北,e东,w西,s南,center居中;还可以写在一起:
ne东北方向
label=tkinter.Label(win,
text="thisisaword",
bg="pink",fg="red",
font=("黑体",),
width=,
height=,
wraplength=,
justify="left",
anchor="ne")
#显示出来
label.pack()
win.mainloop()
Button控件
importtkinter
deffunc():
print("aaaaaaaaaaaaaaaaaaaaaaa")
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
#创建按钮
button=tkinter.Button(win,text="按钮",command=func,width=,height=)
button.pack()
button=tkinter.Button(win,text="按钮",command=lambda:
print("bbbbbbbbbbbb"))
button.pack()
button=tkinter.Button(win,text="退出",command=win.quit)
button.pack()
win.mainloop()
Entry控件
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
Entry:
输入控件,用于显示简单的文本内容
#密文显示
entry=tkinter.Entry(win,show="*")#show="*"可以表示输入密码
entry.pack()
#绑定变量
e=tkinter.Variable()
entry=tkinter.Entry(win,textvariable=e)
entry.pack()
#e就代表输入框这个对象
#设置值
e.set("wewewewewewe")
#取值
print(e.get())
print(entry.get())
win.mainloop()
点击按钮输出输入框中的内容
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
defshowinfo():
#获取输入的内容
print(entry.get())
entry=tkinter.Entry(win)
entry.pack()
button=tkinter.Button(win,text="按钮",command=showinfo)
button.pack()
win.mainloop()
Text控件
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
文本控件:
用于显示多行文本
#height表示的是显示的行数
text=tkinter.Text(win,width=,height=)
text.pack()
str='''盖闻天地之数,有十二万九千六百岁为一元。
将一元分为十二会,乃子丑寅卯辰巳午未申酉戌亥之十二支也。
每会该一万八百岁。
且就一日而论:
子时得阳气,而丑则鸡鸣;寅不通光,而卯则日出;辰时食后,而巳则挨排;日午天中,而未则西蹉;申时晡而日落酉;戌黄昏而人定亥。
譬于大数,若到戌会之终,则天地昏蒙而万物否矣。
再去五千四百岁,交亥会之初,则当黑暗,而两间人物俱无矣,故曰混沌。
又五千四百岁,亥会将终,贞下起元,近子之会,而复逐渐开明。
邵康节曰:
“冬至子之半,天心无改移。
一阳初动处,万物未生时。
”到此,天始有根。
再五千四百岁,正当子会,轻清上腾,有日,有月,有星,有辰。
日月星辰,谓之四象。
故曰,天开于子。
又经五千四百岁,子会将终,近丑之会,而逐渐坚实。
易曰:
“大哉乾元!
至哉坤元!
万物资生,乃顺承天。
”至此,地始凝结。
再五千四百岁,正当丑会,重浊下凝,有水,有火,有山,有石,有土。
水火山石土谓之五形。
故曰,地辟于丑。
又经五千四百岁,丑会终而寅会之初,发生万物。
'''
text.insert(tkinter.INSERT,str)
win.mainloop()
带滚动条的Text
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
#win.geometry("x++")
文本控件:
用于显示多行文本
#创建滚动条
scroll=tkinter.Scrollbar()
text=tkinter.Text(win,width=,height=)
#side放到窗体的哪一侧,fill填充
scroll.pack(side=tkinter.RIGHT,fill=tkinter.Y)
text.pack(side=tkinter.LEFT,fill=tkinter.Y)
#关联
scroll.config(command=text.yview)
text.config(yscrollcommand=scroll.set)
text.pack()
str='''盖闻天地之数,有十二万九千六百岁为一元。
将一元分为十二会,乃子丑寅卯辰巳午未申酉戌亥之十二支也。
每会该一万八百岁。
且就一日而论:
子时得阳气,而丑则鸡鸣;寅不通光,而卯则日出;辰时食后,而巳则挨排;日午天中,而未则西蹉;申时晡而日落酉;戌黄昏而人定亥。
譬于大数,若到戌会之终,则天地昏蒙而万物否矣。
再去五千四百岁,交亥会之初,则当黑暗,而两间人物俱无矣,故曰混沌。
又五千四百岁,亥会将终,贞下起元,近子之会,而复逐渐开明。
邵康节曰:
“冬至子之半,天心无改移。
一阳初动处,万物未生时。
”到此,天始有根。
再五千四百岁,正当子会,轻清上腾,有日,有月,有星,有辰。
日月星辰,谓之四象。
故曰,天开于子。
又经五千四百岁,子会将终,近丑之会,而逐渐坚实。
易曰:
“大哉乾元!
至哉坤元!
万物资生,乃顺承天。
”至此,地始凝结。
再五千四百岁,正当丑会,重浊下凝,有水,有火,有山,有石,有土。
水火山石土谓之五形。
故曰,地辟于丑。
又经五千四百岁,丑会终而寅会之初,发生万物。
'''
text.insert(tkinter.INSERT,str)
win.mainloop()
Checkbutton多选框控件
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
defupdata():
message=""
ifhobby.get()==True:
message+="money\n"
ifhobby.get()==True:
message+="power\n"
ifhobby.get()==True:
message+="people\n"
#清空text中所有内容
text.delete(.,tkinter.END)
text.insert(tkinter.INSERT,message)
#要绑定的变量
hobby=tkinter.BooleanVar()
#多选框
check=tkinter.Checkbutton(win,text="money",variable=hobby,command=updata)
check.pack()
hobby=tkinter.BooleanVar()
check=tkinter.Checkbutton(win,text="power",variable=hobby,command=updata)
check.pack()
hobby=tkinter.BooleanVar()
check=tkinter.Checkbutton(win,text="people",variable=hobby,command=updata)
check.pack()
text=tkinter.Text(win,width=,height=)
text.pack()
win.mainloop()
Radiobutton单选框
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
defupdata():
print(r.get())
#绑定变量,一组单选框要绑定同一个变量,就能区分出单选框了
r=tkinter.IntVar()
radio=tkinter.Radiobutton(win,text="one",value=,variable=r,command=updata)
radio.pack()
radio=tkinter.Radiobutton(win,text="two",value=,variable=r,command=updata)
radio.pack()
win.mainloop()
Listbox控件一
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
列表框控件:
可以包含一个或多个文本框
作用:
在listbox控件的小窗口显示一个字符串
#创建一个listbox,添加几个元素
lb=tkinter.Listbox(win,selectmode=tkinter.BROWSE)
lb.pack()
foritemin["good","nice","handsome","aaa","bbb","ccc","ddd"]:
#按顺序添加
lb.insert(tkinter.END,item)
#在开始添加
lb.insert(tkinter.ACTIVE,"cool")
#将列表当做一个元素添加
#lb.insert(tkinter.END,["verygood","verynice"])
#删除:
参数为开始的索引,参数为结束的索引,如果不指定参数,只删除第一个索引处的内容
lb.delete(,)
#选中:
参数为开始的索引,参数为结束的索引,如果不指定参数,只选中第一个索引处的内容
lb.select_set(,)
#取消选中:
参数为开始的索引,参数为结束的索引,如果不指定参数,只取消第一个索引处的内容
lb.select_clear()
#获取到列表中的元素个数
print(lb.size())
#获取值
print(lb.get(,))
#返回当前的索引项,不是item元素
print(lb.curselection())
#判断:
一个选项是否被选中
print(lb.selection_includes())
win.mainloop()
Listbox控件二
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
#绑定变量
lbv=tkinter.StringVar()
#与BORWSE相似,但是不支持鼠标按下后移动选中位置
lb=tkinter.Listbox(win,selectmode=tkinter.SINGLE,listvariable=lbv)
lb.pack()
foritemin["good","nice","handsome","aaa","bbb","ccc","ddd"]:
#按顺序添加
lb.insert(tkinter.END,item)
#打印当前列表中的选型
print(lbv.get())
#设置选项
#lbv.set(("","",""))
#绑定事件
defmyprint(event):
#print(lb.curselection())#返回下标
print(lb.get(lb.curselection()))#返回值
lb.bind("
win.mainloop()
复制代码
Listbox控件三
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
#win.geometry("x++")
#EXTENDED:
可以使listbox支持shift和Ctrl
lb=tkinter.Listbox(win,selectmode=tkinter.EXTENDED)
lb.pack()
foritemin["good","nice","handsome","aaa","bbb","ccc","ddd","good","nice","handsome","aaa","bbb","ccc","ddd","good","nice","handsome","aaa","bbb","ccc","ddd","good","nice","handsome","aaa","bbb","ccc","ddd","good","nice","handsome","aaa","bbb","ccc","ddd"]:
#按顺序添加
lb.insert(tkinter.END,item)
#滚动条
sc=tkinter.Scrollbar(win)
sc.pack(side=tkinter.RIGHT,fill=tkinter.Y)
#配置
lb.configure(yscrollcommand=sc.set)
lb.pack(side=tkinter.LEFT,fill=tkinter.BOTH)
#额外给属性赋值
sc["command"]=lb.yview
win.mainloop()
复制代码
Listbox四
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
#MULTIPLE支持多选
lb=tkinter.Listbox(win,selectmode=tkinter.MULTIPLE)
lb.pack()
foritemin["good","nice","handsome","aaa","bbb","ccc","ddd"]:
#按顺序添加
lb.insert(tkinter.END,item)
win.mainloop()
复制代码
Scale控件
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
'''
供用户通过拖拽指示器来改变变量的值,可以水平,也可以竖直
'''
#tkinter.HORIZONTAL水平
#tkinter.VERTICAL竖直(默认)
#length:
水平时表示宽度,竖直时表示高度
#tickintervar:
选择值将会为该值得倍数
scale=tkinter.Scale(win,from_=,to=,orient=tkinter.HORIZONTAL,tickinterval=,length=)
scale.pack()
#设置值
scale.set()
#取值
#print(scale.get())
defshowNum():
print(scale.get())
tkinter.Button(win,text="按钮",command=showNum).pack()
win.mainloop()
复制代码
Spinbox控件
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
'''
数值范围控件
'''
#绑定变量
v=tkinter.StringVar()
defupdata():
print(v.get())
#increment:
步长,默认为
#values要输入一个元组最好不要和from和to同时使用,而且步长也没用
#command只要值改变就会执行updata方法
sp=tkinter.Spinbox(win,from_=,to=,increment=,
textvariable=v,command=updata)
#sp=tkinter.Spinbox(win,values=(,,,,))
sp.pack()
#赋值
v.set()
#取值
print(v.get())
win.mainloop()
复制代码
Menu顶层菜单
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
#菜单条
menubar=tkinter.Menu(win)
win.config(menu=menubar)
deffunc():
print("**********")
#创建一个菜单选项
menu=tkinter.Menu(menubar,tearoff=False)
#给菜单选项添加内容
foritemin['python','c','java','c++','c#','php','B','退出']:
ifitem=='退出':
#添加分割线
menu.add_separator()
menu.add_command(label=item,command=win.quit)
else:
menu.add_command(label=item,command=func)
#向菜单条上添加菜单选项
menubar.add_cascade(label='语言',menu=menu)
win.mainloop()
复制代码
Menu鼠标右键菜单
复制代码
importtkinter
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
#菜单条
menubar=tkinter.Menu(win)
deffunc():
print("**********")
#菜单
menu=tkinter.Menu(menubar,tearoff=False)
#给菜单选项添加内容
foritemin['python','c','java','c++','c#','php','B','退出']:
ifitem=='退出':
#添加分割线
menu.add_separator()
menu.add_command(label=item,command=win.quit)
else:
menu.add_command(label=item,command=func)
menubar.add_cascade(label="语言",menu=menu)
defshowMenu(event):
menubar.post(event.x_root,event.y_root)
win.bind("
win.mainloop()
复制代码
Combobox下拉控件
复制代码
importtkinter
fromtkinterimportttk
win=tkinter.Tk()
win.title("yudanqu")
win.geometry("x++")
#绑定变量
cv=tkinter.StringVar()
com=ttk.Combobox(win,textvariable=cv)
com.pack()
#设置下拉数据
com["value"]=("黑龙江","吉林","辽宁")
#设置默认值
com.current()
#绑定
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 图像 界面 gui 编程 tkinter 实例 代码 大全
![提示](https://static.bdocx.com/images/bang_tan.gif)