python_tkinter组件
1.按钮
# 按钮
# bg设置背景⾊
btn = tkinter.Button(root,text = '按钮',bg = 'red')btn.pack()
# fg设置前景⾊(⽂字颜⾊)
btn1 = tkinter.Button(root,text = '按钮',fg = 'blue')btn1.pack()
# font设置字体⼤⼩和样式(字体,⼤⼩,粗体,斜体等)btn2 = tkinter.Button(root,text = '按钮',font = ('楷体',20,'italic'))btn2.pack()
# 设置按钮⾼度和宽度单位:字符⼤⼩(不推荐⽤)
btn3 = tkinter.Button(root,text = '按钮',height = 4,width = 10)btn3.pack()
# 设置多⾏⽂本的对齐⽅式right/left
btn4 = tkinter.Button(root,text = '孙悟空⼤\\n闹天宫',justify = 'right')btn4.pack()
# state 状态 active(激活), disabled(不能点), or normal(正常)btn5 = tkinter.Button(root,text = '按钮',state = 'disabled')btn5.pack()# 边框粗细
btn5 = tkinter.Button(root,text = '按钮',bd = 5)btn5.pack()
2.复选框
# 设置⽂本⽅法1(⽂本不变)
checkbutton = tkinter.Checkbutton(root,text = '同意此协议')checkbutton.pack()
# 设置⽂本⽅法2(可变⽂本)# 设置显⽰内容的tkinter变量text = tkinter.StringVar()# 设置内容
text.set('同意嫁给我')
checkbutton1 = tkinter.Checkbutton(root,textvariable = text)checkbutton1.pack()
# 设置复选框勾选与否的值,当勾选或者不勾选时 result会获取⼀个值result = tkinter.IntVar()
# 设置操作chenckbutton的⽅法:根据是否勾选获取值def func():
print(result.get())
# onvalue = 66,offvalue = 77 勾选时值为66默认为1,不勾选时为77默认为77
checkbutton = tkinter.Checkbutton(root,text = '同意此协议',variable =result,command = func,onvalue = 66,offvalue = 77)checkbutton.pack()
3.单⾏⽂本输⼊框
# 单⾏⽂本输⼊框# 创建组件
# 宽度50:表⽰输⼊50个字符那么长/设置~背景⾊,前景⾊(输⼊的⽂字颜⾊)username = tkinter.Entry(root,width = 50,bg = 'blue',fg = 'yellow')username.pack()# 密码
# show = '*':⽂本框中的内容显⽰为*
password = tkinter.Entry(root,show = '*')password.pack()
# 没办法往⾥⾯写东西
test = tkinter.Entry(root,state = 'disabled')test.pack()
4.Frame布局框架
# 创建框架1
frame1 = tkinter.Frame(root,bg = 'red',width = 500,height = 100)frame1.pack(side = 'top',)# 在框架中摆放
btn1 = tkinter.Button(frame1,text = '按钮1')btn1.pack(side = 'left')
btn2 = tkinter.Button(frame1,text = '按钮2')btn2.pack(side = 'left')
btn3 = tkinter.Button(frame1,text = '按钮3')
btn3.pack(side = 'left')# 创建框架2
frame2 = tkinter.Frame(root,bg = 'blue',width = 500,height = 100)frame2.pack(side = 'top')# 在框架中摆放
btn1 = tkinter.Button(frame2,text = '按钮1')btn1.pack(side = 'left',padx = 20)
btn2 = tkinter.Button(frame2,text = '按钮2')btn2.pack(side = 'left',padx = 20)
btn3 = tkinter.Button(frame2,text = '按钮3')btn3.pack(side = 'left',padx = 20)
⼀般配合pack()布局⽅式使⽤,⼀般很少⽤到。5.LabelFrame(标签框架) ⽰例:
# 创建组件
labelframe = tkinter.LabelFrame(root,text = '四⼤美⼥')labelframe.pack(ipadx = 100)# 将其他组件摆放到labelframe中
btn1 = tkinter.Button(labelframe,text = '王昭君')btn1.pack()
btn2 = tkinter.Button(labelframe,text = '西施')btn2.pack()
btn3 = tkinter.Button(labelframe,text = '貂蝉')btn3.pack()
btn4 = tkinter.Button(labelframe,text = '杨⽟环')btn4.pack()
6.Lable标签 ⽰例:
# 创建组件
label = tkinter.Label(root,text = '这是⼀个标签!')label.pack()
7.Listbox列表菜单 ⽰例:
# 设置listbox的内容
names = ['杨⽟环','西施','貂蝉','王昭君','潘⾦莲']# 将数据转换为tkinter的字符串变量
students = tkinter.StringVar(value=names)# 创建组件
listbox = tkinter.Listbox(root,listvariable = students)listbox.pack()
8.Menu菜单 ⽰例:
# 1创建主菜单
bigmenu = tkinter.Menu(root)
# 2创建⼦菜单 设置tearoff = 0,让菜单不会飘出窗⼝filemenu = tkinter.Menu(bigmenu,tearoff = 0)# ⼦菜单可以添加功能
filemenu.add_command(label = '打开⽂件')filemenu.add_command(label = '保存⽂件')filemenu.add_command(label = '导出⽂件')# 横线分割
filemenu.add_separator()
filemenu.add_command(label = '退出')# 3将⼦菜单加⼊主菜单
bigmenu.add_cascade(label = '⽂件',menu = filemenu)# 2创建⼦菜单
editmenu = tkinter.Menu(bigmenu)# 3将⼦菜单加⼊主菜单
bigmenu.add_cascade(label = '修改',menu = editmenu)# 4将主餐单加⼊窗⼝
root.config(menu = bigmenu)
9.OptionMenu设置菜单 ⽰例:
# 创建变量接受结果
result = tkinter.StringVar()result.set('请选择⼀个问题:')# 创建组件
optionmenu = tkinter.OptionMenu(root,result,'你的初恋是谁?','你的初中⽼师是谁?','你的⾼中⽼师是谁?')optionmenu.pack()
10.Menubutton菜单按钮 ⽰例:
# 创建组件
menbutton = tkinter.Menubutton(root,text = '选择性别:')menbutton.pack()# 添加选项# 设置变量
sex = tkinter.StringVar()# tearoff = 0 取消菜单飘出
menu = tkinter.Menu(menbutton,tearoff = 0)
menu.add_radiobutton(label = '男',variable = sex)menu.add_radiobutton(label = '⼥',variable = sex)# 将菜单配置到组件
menbutton.config(menu = menu)
11.PanedWindow划分窗⼝ ⽰例:
# 创建组件 垂直摆放:vertical ⽔平摆放:horizontalpanedwindow = tkinter.PanedWindow(root,orient = 'horizontal')# 添加组件
btn1 = tkinter.Button(panedwindow,text = '按钮1123412341234')btn2 = tkinter.Button(panedwindow,text = '按钮2')# 摆放组件
panedwindow.add(btn1)panedwindow.add(btn2)# 填满整个界⾯
panedwindow.pack(fill = 'both',expand = 'yes')
12.Radiobutton单选按钮 ⽰例:
# 创建组件
sex = tkinter.StringVar()# 设置变量
radio1 = tkinter.Radiobutton(root,text = '男',variable = sex,value = 'man')radio1.pack()
radio2 = tkinter.Radiobutton(root,text = '⼥',variable = sex,value = 'woman')# 默认选中'⼥'radio2.select()radio2.pack()
13.Scale滑动条 ⽰例:
# 创建组件 默认竖着,设置横向:orient = tkinter.HORIZONTAL 设置数值:from_ = 50,to = 80 scale = tkinter.Scale(root,orient = tkinter.HORIZONTAL,from_ = 50,to = 80,resolution = 0.5)scale.pack()
14.Scrollbar滚动条 ⽰例:
设置单位:resolution = 0.5
# 创建组件:简单的滚动条效果scroll = tkinter.Scrollbar(root)scroll.pack(fill = 'y',side = 'right')
15.Spinbox类型限制输⼊框(数字) ⽰例:
# 创建组件 设置范围:from_ = 0,to = 100 设置增加单位:increment = 0.5spinbox = tkinter.Spinbox(root,from_ = '0',to = '100',increment = 0.5)spinbox.pack()
16.Text多⾏⽂本输⼊框 ⽰例:
# 创建组件
text = tkinter.Text(root,width = 50,height = 10)text.pack()
# 设置值:从第0⾏第0列开始插⼊⽂本text.insert('0.0','你好啊~⼩姐姐')
17.Toplevel弹出窗⼝
⽰例:
# 函数def talk(): # 新窗⼝
newroot = tkinter.Toplevel()
# 创建组件:弹出新窗⼝ 点击按钮执⾏函数:command = talkbtn = tkinter.Button(root,text = '点击开始对话~',command = talk)btn.pack()
因篇幅问题不能全部显示,请点此查看更多更全内容