Python 3 – Tkinter Entry小部件

Python 3 – Tkinter Entry小部件

Entry小部件用于从用户接受单行文本字符串。

  • 如果您想要显示可以编辑的多行文本,则应该使用小部件。

  • 如果您想要显示用户无法修改的一行或多行文本,则应该使用小部件。

语法

创建此小部件的简单语法如下 –

w = Entry(master,options,...)

参数

  • master − 表示父窗口。

  • options − 这是此小部件的最常用选项列表。这些选项可以用逗号分隔的键值对形式使用。

序号 选项与描述
1 bg 标签和指示器后面显示的常规背景颜色。
2 bd 指示器周围的边框大小。默认为2像素。
3 command 每次用户更改此复选框的状态时调用的过程。
4 cursor 如果将此选项设置为光标名称(arrow、dot等),则光标在光标移到复选框上时会更改为该模式。
5 font 用于文本的字体。
6 exportselection 默认情况下,如果您在输入小部件中选择文本,则会自动将其导出到剪贴板。要避免此导出,请使用exportselection=0。
7 fg 用于呈现文本的颜色。
8 highlightcolor 当复选框获得焦点时,焦点突出显示的颜色。
9 justify 如果文本包含多行,则此选项控制如何对齐文本:CENTER、LEFT或RIGHT。
10 relief 使用默认值relief=FLAT时,复选框不会突出显示其背景。您可以将此选项设置为任何其他样式。
11 selectbackground 用于显示所选文本的背景颜色。
12 selectborderwidth 用于所选文本周围的边框宽度。默认值为一个像素。
13 selectforeground 所选文本的前景(文本)颜色。
14 show 通常,用户键入的字符显示在输入框中。要创建一个密码输入框,将每个字符回显为星号,请设置show=”*”。
15 state 默认state=NORMAL,但您可以使用state=DISABLED将控件变灰并使其无响应。如果光标当前位于复选框上,则状态为ACTIVE。
16 textvariable 为了能够从输入小部件中检索当前文本,您必须将此选项设置为StringVar类的实例。
17 width 复选框的默认宽度由显示的图像或文本的大小确定。您可以将此选项设置为字符数,复选框将始终具有该字符数的空间。
18 xscrollcommand 如果您预期用户输入的文本将经常超过小部件的屏幕大小,则可以将输入小部件链接到滚动条。

方法

以下是此小部件常用的方法 −

序号 方法 & 描述
1 delete ( first, last = None ) 从部件中删除字符,从索引 first 开始,到位置 last 之前但不包括该字符。 如果省略第二个参数,则仅删除在位置 first 上的单个字符。
2 get() 以字符串的形式返回输入框的当前文本。
3 icursor ( index ) 将光标插入到给定索引处的字符之前。
4 index ( index ) 将窗口部件的内容移动,使给定索引的字符成为最左边的可见字符。 如果文本完全适合窗口部件中,则不起作用。
5 insert ( index, s ) 将字符串 s 插入到给定索引之前的字符中。
6 select_adjust ( index ) 此方法用于确保选择包括指定索引处的字符。
7 select_clear() 清除选择。 如果当前没有选择,则不起作用。
8 select_from ( index ) 将 ANCHOR 索引位置设置为由索引选择的字符,并选择该字符。
9 select_present() 如果存在选择,则返回 True,否则返回 False。
10 select_range ( start, end ) 在程序控制下设置选择。 选择从开始索引开始,到但不包括结束索引处的文本。 开始位置必须在结束位置之前。
11 select_to ( index ) 选择从 ANCHOR 位置开始到给定索引处的字符之前的所有文本。
12 xview ( index ) 此方法在将 Entry 窗口部件与水平滚动条链接时很有用。
13 xview_scroll ( number, what ) 用于水平滚动单行输入框。 what 参数必须是 UNITS,以按字符宽度滚动,或 PAGES,以滚动整个输入框大小的块。 数字为正向左滚动,为负向右滚动。

示例

请尝试自己运行以下示例 −

# !/usr/bin/python3
from tkinter import *

top = Tk()
L1 = Label(top, text = "用户名")
L1.pack( side = LEFT)
E1 = Entry(top, bd = 5)
E1.pack(side = RIGHT)

top.mainloop()

结果

运行以上代码后,会产生如下结果−

Python 3 - Tkinter Entry小部件

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程