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   水平摆放:horizontal
panedwindow = 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     设置单位:resolution = 0.5
scale = tkinter.Scale(root,orient = tkinter.HORIZONTAL,from_ = 50,to = 80,resolution = 0.5)
scale.pack()

14.Scrollbar滚动条

  示例:

  

# 创建组件:简单的滚动条效果
scroll = tkinter.Scrollbar(root)
scroll.pack(fill = 'y',side = 'right')

15.Spinbox类型限制输入框(数字)

   示例:

  

# 创建组件  设置范围:from_ = 0,to = 100     设置增加单位:increment = 0.5
spinbox = 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 = talk
btn = tkinter.Button(root,text = '点击开始对话~',command = talk)
btn.pack()
posted @ 2019-09-15 20:55  手可摘星辰。  阅读(2407)  评论(0编辑  收藏  举报