赞
踩
Tkinter 文本框:Entry
Python Tkinter 文本框用来让用户输入一行文本字符串。
你如果需要输入多行文本,可以使用 Text 组件。
你如果需要显示一行或多行文本且不允许用户修改,你可以使用 Label 组件。
语法
et = Entry( master, option, … )
master: 按钮的父容器。
options: 可选项,即该按钮的可设置的属性。这些选项可以用键 = 值的形式设置,并以逗号分隔。
常用组件选项讲解:
bg:输入框背景颜色
fg:文字颜色。值为颜色或为颜色代码,如:‘red’,’#ff0000’
bd:边框的大小,默认为 2 个像素
cursor:光标的形状设定,如arrow, circle, cross, plus 等
font:文本字体
exportselection:默认情况下,你如果在输入框中选中文本,默认会复制到粘贴板,如果要忽略这个功能刻工艺设置 exportselection=0。
highlightcolor:文本框高亮边框颜色,当文本框获取焦点时显示
justify:显示多行文本的时候,设置不同行之间的对齐方式,可选项包括LEFT, RIGHT, CENTER
relief:边框样式,设置控件3D效果,可选的有:FLAT、SUNKEN、RAISED、GROOVE、RIDGE。默认为 FLAT。
selectbackground:选中文字的背景颜色
selectborderwidth:选中文字的背景边框宽度
selectforeground:选中文字的颜色
show:指定文本框内容显示为字符,值随意,满足字符即可。如密码可以将值设为 show="*"
state:默认为 state=NORMAL, 文框状态,分为只读和可写,值为:normal/disabled
textvariable:文本框的值,是一个StringVar()对象
width:文本框宽度
xscrollcommand:设置水平方向滚动条,一般在用户输入的文本框内容宽度大于文本框显示的宽度时使用。
常用方法:
delete ( first, last=None )如
text.delete(10) # 删除索引值为10的值
text.delete(10, 20) # 删除索引值从10到20之前的值
get():获取文件框的值
icursor ( index ):将光标移动到指定索引位置,只有当文框获取焦点后成立
index ( index ):返回指定的索引值
insert ( index, s ):向文本框中插入值,index:插入位置,s:插入值
select_adjust ( index ):选中指定索引和光标所在位置之前的值
select_clear():清空文本框
select_from ( index ):设置光标的位置,通过索引值 index 来设置
select_present():如果有选中,返回 true,否则返回 false。
select_range ( start, end ):选中指定索引位置的值,start(包含) 为开始位置,end(不包含) 为结束位置start必须比end小
select_to ( index ):选中指定索引与光标之间的值
xview ( index ):该方法在文本框链接到水平滚动条上很有用。
xview_scroll ( number, what ):用于水平滚动文本框。 what 参数可以是 UNITS, 按字符宽度滚动,或者可以是 PAGES, 按文本框组件块滚动。 number 参数,正数为由左到右滚动,负数为由右到左滚动。
实战演练:
1.制作一个输入框,输入网站名
import tkinter as tk
top = tk.Tk()
lb = tk.Label(top, text="网站名")
lb.pack(side='left')
et = tk.Entry(top, bd=5)
et.pack(side='left')
top.mainloop()
2.制作一个文本输入框,并按要求插入到指定位置
import tkinter as tk window = tk.Tk() window.title("My Window") window.geometry('200x200') # 插入到光标处 def insert_point(): var = et.get() t.insert('insert', var) # 插入到最后 def insert_end(): var = et.get() t.insert('end', var) # 指定文本框内容显示为字符。如密码可以将值设为 show="*" et = tk.Entry(window, show='*') et.pack() bt1 = tk.Button(window, text='insert point', width=15, height=2,command=insert_point) bt1.pack() bt2 = tk.Button(window, text='insert end', width=15, height=2,command=insert_end) bt2.pack() t = tk.Text(window, height=2) t.pack() window.mainloop()
下节预告:listbox
Python交流群:942913325 欢迎大家一起交流学习
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。