Python Tkinter – Entry小组件

Tkinter教程, Entry小组件用于向用户提供单行文本框,以接受用户的值。我们可以使用Entry小组件来接受用户的文本字符串。它只能用于用户的一行文本。对于多行文本,我们必须使用文本部件。
使用Entry小组件的语法如下。

Python Tkinter Entry小组件 语法

w = Entry (parent, options) 

下面列出了可能的选项清单。

SN 选项 描述
1 bg 小部件的背景颜色。
2 bd 小组件的边界宽度,单位是像素。
3 cursor 鼠标指针将被改为光标类型,设置为箭头、圆点等。
4 exportselection 默认情况下,写在输入框内的文本将被自动复制到剪贴板。我们可以把exportselection设置为0,以不复制这个。
5 fg 它代表文本的颜色。
6 font 它表示文本的字体类型。
7 highlightbackground 它表示当小组件没有输入焦点时,要在遍历高亮区域显示的颜色。
8 highlightcolor 它代表了用于遍历高亮矩形的颜色,当小部件拥有输入焦点时,该矩形会围绕小部件绘制。
9 highlightthickness 它代表一个非负值,表示当小部件拥有输入焦点时,在其外部绘制高亮矩形的宽度。
10 insertbackground 它表示在插入光标覆盖的区域内作为背景的颜色。这个颜色通常会覆盖小组件的正常背景。
11 insertborderwidth 它代表一个非负值,表示要在插入光标周围绘制的三维边界的宽度。该值可以有Tk_GetPixels所接受的任何形式。
12 insertofftime 它代表一个非负的整数,表示插入光标在每个闪烁周期中应该保持 "关闭 "的毫秒数。如果这个选项为零,那么光标就不会闪烁:它一直处于开启状态。
13 insertontime 指定一个非负的整数,表示插入光标在每个闪烁周期中应保持 "开启 "的毫秒数。
14 insertwidth 它表示表示插入光标的总宽度的值。该值可以有Tk_GetPixels所能接受的任何形式。
15 justify 它规定了在文本包含多行时如何组织文本。
16 relief 它指定了边框的类型。它的默认值是FLAT。
17 selectbackground 选定文本的背景颜色。
18 selectborderwidth 在所选任务周围显示的边框的宽度。
19 selectforeground 所选任务的字体颜色。
20 show 它用于显示一些其他类型的输入文字,而不是字符串。例如,密码是用星星(*)输入的。
21 textvariable 它被设置为StringVar的实例,以检索条目中的文本。
22 width 显示文本或图像的宽度。
23 xscrollcommand 如果我们想让用户输入更多的文字,而不是小部件的实际宽度,那么条目小部件可以与水平滚动条链接。

Python Tkinter Entry小组件 示例

# !/usr/bin/python3

from tkinter import *

top = Tk()

top.geometry("400x250")

name = Label(top, text = "Name").place(x = 30,y = 50)

email = Label(top, text = "Email").place(x = 30, y = 90)

password = Label(top, text = "Password").place(x = 30, y = 130)

sbmitbtn = Button(top, text = "Submit",activebackground = "pink", activeforeground = "blue").place(x = 30, y = 170)

e1 = Entry(top).place(x = 80, y = 50)

e2 = Entry(top).place(x = 80, y = 90)

e3 = Entry(top).place(x = 95, y = 130)

top.mainloop()

输出:
Python Tkinter Entry小组件

Python Tkinter Entry小组件 函数

Python 提供了各种方法来配置写在小组件内的数据。Entry小组件提供了以下方法。

SN 函数 描述
1 delete(first, last = none) 它用于删除小部件内的指定字符。
2 get() 它用于获取写在小部件内的文本。
3 icursor(index) 它用于改变插入光标的位置。我们可以指定光标要放在哪个字符之前的索引。
4 index(index) 它用于将光标放在指定索引处写入的字符的左边。
5 insert(index,s) 它用于在放置在指定索引处的字符之前插入指定的字符串。
6 select_adjust(index) 它包括选择存在于指定索引的字符。
7 select_clear() 如果已经做了一些选择,它将清除选择。
8 select_form(index) 它将锚点索引位置设置为索引所指定的字符。
9 select_present() 如果条目中的某些文本被选中,它返回真,否则返回假。
10 select_range(start,end) 它选择存在于指定范围之间的字符。
11 select_to(index) 它选择从开始到指定索引的所有字符。
12 xview(index) 它用于将条目小部件与水平滚动条联系起来。
13 xview_scroll(number,what) 它用于使条目可以水平滚动。

Python Tkinter Entry小组件 函数示例: 一个简单的计算器

import tkinter as tk
from functools import partial

def call_result(label_result, n1, n2):
    num1 = (n1.get())
    num2 = (n2.get())
    result = int(num1)+int(num2)
    label_result.config(text="Result = %d" % result)
    return

root = tk.Tk()
root.geometry('400x200+100+200')

root.title('Calculator')

number1 = tk.StringVar()
number2 = tk.StringVar()

labelNum1 = tk.Label(root, text="A").grid(row=1, column=0)

labelNum2 = tk.Label(root, text="B").grid(row=2, column=0)

labelResult = tk.Label(root)

labelResult.grid(row=7, column=2)

entryNum1 = tk.Entry(root, textvariable=number1).grid(row=1, column=2)

entryNum2 = tk.Entry(root, textvariable=number2).grid(row=2, column=2)

call_result = partial(call_result, labelResult, number1, number2)

buttonCal = tk.Button(root, text="Calculate", command=call_result).grid(row=3, column=0)

root.mainloop()

输出:
Python Tkinter Entry小组件 函数示例

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程