【python-GUI-tkinter】控件基础(3.6.2)
2017-12-03 00:20
711 查看
说明每个控件最后要加上pack().否则控件是无法显示的
1.Label标签
用法:Label(根对象,【属性列表】)
属性:
text 要显示的文本
textvariable 变量文本
bg 背景颜色
bd 外围3D边界的宽度
font 字体(颜色、大小)
width 控件宽度
height 控件高度
绑定变量 var=tkinter.StringVar()
e=Label(根对象,
textvariable = var)
获取文本框中的值 var.get()
设置文本框中的值 var.set(item)
趣味实例:
插入图片(只能gif)
2.Entry输入框
e = tkinter.Entry(root.show='#') #输入的字符全为#,默认为show=None
只能设置width,没有height
绑定变量 var=tkinter.StringVar() e=Entry(根对象, textvariable = var)
获取文本框中的值 var.get()
设置文本框中的值 var.set(item)
但是不会显示text中的内容
3.Text 文本框
没有text选项。
t = tkinter,Text(root)
t.insert(3.2,var)#在text第一行第一列后加上var
t.insert('insert',var) #在鼠标光标所指区域加上var
t.insert('end',var) #在最后加上var
t.delete(2,1) #删除第二行第一列之后的一个字符
趣味实例:
4.Listbox列表
插入insert
删除delete
趣味实例:
5.Checkbutton多选框
import tkinter
root=tkinter.Tk()
L=[
("a",1),
("b",2),
("c",3),
("d",4),
]
v=[]
for i,j in L:
v.append(tkinter.IntVar())
b=tkinter.Checkbutton(root,text=i,variable=v[-1]).pack()#多选框是独立的variable
root.mainloop()
6.Radiobutton单选框
import tkinter
root=tkinter.Tk()
root.geometry("200x200")
L=[
("a",1),
("b",2),
("c",3),
("d",4),
]
v=tkinter.IntVar()
for i,j in L:
b=tkinter.Radiobutton(root,text=i,variable=v,value=j)#单选框共用一个variable,但是value必须不同
b.pack(anchor='w')#左对齐,每个b都要pack
root.mainloop()
7.LabelFrame
import tkinter
root=tkinter.Tk()
root.geometry("200x200")
group = tkinter.LabelFrame(root,text="lesroad的选择是!",padx=5,pady=5)
group.pack(padx=10,pady=10)
L=[
("a",1),
("b",2),
("c",3),
("d",4),
]
v=tkinter.IntVar()
for i,j in L:
b=tkinter.Radiobutton(group,text=i,variable=v,value=j)#单选框共用一个variable,但是value必须不同
b.pack(anchor='w')#左对齐,每个b都要pack//改成同一行:b.grid(row=0,column=j)
root.mainloop()
1.Label标签
用法:Label(根对象,【属性列表】)
属性:
text 要显示的文本
textvariable 变量文本
bg 背景颜色
bd 外围3D边界的宽度
font 字体(颜色、大小)
width 控件宽度
height 控件高度
绑定变量 var=tkinter.StringVar()
e=Label(根对象,
textvariable = var)
获取文本框中的值 var.get()
设置文本框中的值 var.set(item)
import tkinter root=tkinter.Tk() root.title('lesroad')# 设置窗口标题 root.geometry('500x600')# 设置窗口大小 注意:是x 不是* root.resizable(width=1,height=0)# 设置窗口是否可以变化长/宽,False不可变,True可变,默认为True l=tkinter.Label(root,text='hello',bg='black',fg='red',font=('Arial',24,'italic'),width=8,height=3,cursor='cross') # 在对象中添加标签,背景,前景,字体(系列,尺寸,样式),尺寸(一个字符为1),鼠标光标形状 l.pack(side='bottom')# side=TOP或'top'都可以 root.mainloop()# 进入消息循环
趣味实例:
#功能:点击按钮标签显示'you hit me',再点一下消失 import tkinter root = tkinter.Tk() root.title('my windows') root.geometry('300x300') flag=0 def hit(): global flag if(flag==0): var.set('you hit me')# var.set(value)设置值 //var.get()获取值 flag=1 else: var.set(' ') flag=0 var=tkinter.StringVar()# 设置var为字符串变量,或用tkinter.Variable() l=tkinter.Label(root,textvariable=var,bg='green',width=15).pack()# 最好不要接着写pack,Entry会报错 b = tkinter.Button(root,text='hit me',command=hit).pack() root.mainloop()
插入图片(只能gif)
photo=tkinter.PhotoImage(file=r'G:\QQ截图20170920214145.gif') ip=tkinter.Label(root,image=photo) ip.pack()
2.Entry输入框
e = tkinter.Entry(root.show='#') #输入的字符全为#,默认为show=None
只能设置width,没有height
绑定变量 var=tkinter.StringVar() e=Entry(根对象, textvariable = var)
获取文本框中的值 var.get()
设置文本框中的值 var.set(item)
但是不会显示text中的内容
3.Text 文本框
没有text选项。
t = tkinter,Text(root)
t.insert(3.2,var)#在text第一行第一列后加上var
t.insert('insert',var) #在鼠标光标所指区域加上var
t.insert('end',var) #在最后加上var
t.delete(2,1) #删除第二行第一列之后的一个字符
趣味实例:
#输入字符串,可以在后边加,也可以在光标后加,在text中输出字符串 import tkinter root=tkinter.Tk() root.title('my windows') root.geometry('300x300') e = tkinter.Entry(root,width=30) e.pack() def Insert(): var=e.get() t.insert('insert',var)# 光标后加 def End(): var=e.get() t.insert('end',var)# 字符串后加 b1=tkinter.Button(root,text='insert point',command=Insert) b1.pack() b2=tkinter.Button(root,text='insert end',command=End) b2.pack() t=tkinter.Text(root,width=50,height=3) t.pack() root.mainloop()
4.Listbox列表
插入insert
删除delete
趣味实例:
#输入字符串,可以在后边加,也可以在光标后加,在text中输出字符串,详见下图 import tkinter root=tkinter.Tk() root.title('my windows') root.geometry('300x300') var=tkinter.StringVar() l=tkinter.Label(root,width=4,textvariable=var,bg='yellow') l.pack() def click(): value=l.get(l.curselection())#获取光标所选 var.set(value) b=tkinter.Button(root,text='print selection',command=click) b.pack() l=tkinter.Listbox(root) L=[11,22,33,44,1,2,3,4] for i in L: l.insert('end',i) l.insert(1,'first') l.pack() root.mainloop()
5.Checkbutton多选框
import tkinter
root=tkinter.Tk()
L=[
("a",1),
("b",2),
("c",3),
("d",4),
]
v=[]
for i,j in L:
v.append(tkinter.IntVar())
b=tkinter.Checkbutton(root,text=i,variable=v[-1]).pack()#多选框是独立的variable
root.mainloop()
6.Radiobutton单选框
import tkinter
root=tkinter.Tk()
root.geometry("200x200")
L=[
("a",1),
("b",2),
("c",3),
("d",4),
]
v=tkinter.IntVar()
for i,j in L:
b=tkinter.Radiobutton(root,text=i,variable=v,value=j)#单选框共用一个variable,但是value必须不同
b.pack(anchor='w')#左对齐,每个b都要pack
root.mainloop()
7.LabelFrame
import tkinter
root=tkinter.Tk()
root.geometry("200x200")
group = tkinter.LabelFrame(root,text="lesroad的选择是!",padx=5,pady=5)
group.pack(padx=10,pady=10)
L=[
("a",1),
("b",2),
("c",3),
("d",4),
]
v=tkinter.IntVar()
for i,j in L:
b=tkinter.Radiobutton(group,text=i,variable=v,value=j)#单选框共用一个variable,但是value必须不同
b.pack(anchor='w')#左对齐,每个b都要pack//改成同一行:b.grid(row=0,column=j)
root.mainloop()
相关文章推荐
- Python Tkinter基础控件用法
- python Tkinter学习笔记 基础UI控件 01
- Python Tkinter GUI 常用控件(后续整理加入了几个pmw的控件)
- Python -- Gui编程 -- Tkinter的使用 -- 基本控件
- Python3 Tkinter基础 Label pack(side=LEFT) 设置控件在窗体中的位置
- Python基础 GUI 编程 Tkinter
- Python Tkinter基础控件用法
- Python Tkinter 基础控件学习
- Python:GUI之tkinter学习笔记1控件的介绍及使用
- Python3 Tkinter基础 Spinbox 可输入 能调整的 从指定范围内选择参数的控件
- Python Tkinter基础控件入门实例
- Python Tkinter 基础控件学习
- 使用Tkinter做python的GUI编程
- Python3 Tkinter基础 Canvas create_line 画实线与虚线
- Python3 Tkinter基础 Menu 点击下拉菜单中的一项 这项前面出现对勾(可以多选) add_checkbutton
- Python3.5 tkinterGUI
- Python:GUI之tkinter学习笔记3事件绑定
- python gui之tkinter语法杂记
- Tkinter 8.5 参考手册: a GUI for Python (五)4
- Python3 Tkinter基础 Checkbutton 使用for循环生成多个 anchor=W 西对齐