tkinter
主窗口
import tkinter as tk
window = tk.Tk() ###生成窗口
window.title('标题名') ###修改框体的名字
window.resizable(0,0) ###框体大小可调
window.geometry('400x400') ###设置框体大小
window.mainloop()
window.destroy() 窗口结束
Button按钮
btn = tk.Button(window,text='button')
btn.place(x=100,y=100)
Label标签
lb = tk.Label(window,text='label')
lb.place(x=110,y=110)
entry
属性
bg 输入框背景颜色
bd 边框的大小
fg 字体颜色
font 文本字体
justify 文本对齐方式
width 文本框宽度
show 文本显示的内容
方法
delete(first,last) 删除文本框的内容
get( ) 获取文本框的值
index( ) 返回指定的索引值
inser(intex , s) 向文本框插入值 index位置,s值
Text
1属性
borderwidth
font
justify 文本对齐方式
方法
delete(start,end=None)
get( )
insert( )
Menu
先讲一个菜单栏
menu_bar = tk.Menu(window) 菜单栏
菜单跟菜单的项
menu1 = tk.Menu(menu_bar,tearoff=False) 菜单
menu1.add_command( label='New' )添加菜单的项
menu1.add_command( labe='Open')
menu1.add_command( labe='Close')
add_separator( )添加分割线
将菜单添加到菜单栏
menu_bar.add_cascade( label='file',menu=menu1 )
window.config( menu=menu_bar)
属性
activeforeground 菜单项的背景色
activeborderwidth 选项的边框
bg 背景颜色
font 字体
tearoff 菜单分离出去
ListBox
属性
bd 边框
font 字体
width
height
方法
insert( )
get( )
delete( )
active( )
curselection( )
tkinter中的15种核心组件
Button 按钮;
Label 标签,可以显示文字或图片;
Entry 文本框(单行);
Text 文本框(多行);
Canvas 绘图形组件,可以在其中绘制图形;
Checkbutton 复选框;
Frame 框架,将几个组件组成一组
Listbox 列表框;
Menu 菜单;
Menubutton 它的功能完全可以使用Menu替代;
Message 与Label组件类似,但是可以根据自身大小将文本换行;
Radiobutton 单选框;
Scale 滑块;允许通过滑块来设置一数字值
Scrollbar 滚动条;配合使用canvas, entry, listbox, and text窗口部件的标准滚动条;
Toplevel 用来创建子窗口窗口组件。
组件的放置和排版(pack,grid,place)
pack组件设置位置属性参数:
after: 将组件置于其他组件之后;
before: 将组件置于其他组件之前;
anchor: 组件的对齐方式,顶对齐'n',底对齐's',左'w',右'e'
side: 组件在主窗口的位置,可以为'top','bottom','left','right'(使用时tkinter.TOP,tkinter.E);
fill 填充方式 (Y,垂直,X,水平)
expand 1可扩展,0不可扩展
grid组件使用行列的方法放置组件的位置,参数有:
column: 组件所在的列起始位置;
columnspam: 组件的列宽;
row: 组件所在的行起始位置;
rowspam: 组件的行宽;
place组件可以直接使用坐标来放置组件,参数有:
anchor: 组件对齐方式;
x: 组件左上角的x坐标;
y: 组件右上角的y坐标;
relx: 组件相对于窗口的x坐标,应为0-1之间的小数;
rely: 组件相对于窗口的y坐标,应为0-1之间的小数;
width: 组件的宽度;
heitht: 组件的高度;
relwidth: 组件相对于窗口的宽度,0-1;
relheight: 组件相对于窗口的高度,0-1;
插入数据方法(重要)
for iteam in datas:
for i in range(len(textpro)):
if i == iteam[0]:
textpro[i].insert(0,str(iteam[1]))