本篇文章主要 Python Tkinter 的 Entry Widget
欢迎来到Tkinter Entry控件的世界!(◕‿◕✿)
基本介绍
Entry是Tkinter中最常用的文本输入控件,就像这样 → [______] ← 可以在这里输入文字哦~
1
2
3
4
5
6
7
|
from tkinter import *
root = Tk()
entry = Entry(root)
entry.insert(0, "Hello World!")
entry.pack()
root.mainloop()
|
这样你就创建了一个最简单的输入框啦 (★ω★)

常用属性设置
基础属性
width
: 宽度(单位是字符数)
bg
/background
: 背景色
fg
/foreground
: 文字颜色
font
: 字体
show
: 显示替代字符(常用于密码输入)
textvariable
: 绑定变量
1
2
3
4
5
6
7
8
|
# 高级一点的例子 (●'◡'●)
password_entry = Entry(root,
width=20,
bg="light yellow",
fg="blue",
font=("Arial", 12),
show="*") # 密码显示为*
password_entry.pack()
|
边框样式
bd
/borderwidth
: 边框宽度
relief
: 边框样式 (FLAT, SUNKEN, RAISED, GROOVE, RIDGE)
1
2
3
4
5
|
fancy_entry = Entry(root,
bd=5,
relief=GROOVE,
bg="mistyrose")
fancy_entry.pack()
|
数据操作
插入和获取内容
insert(index, text)
: 插入文本
get()
: 获取内容
delete(first, last=None)
: 删除内容
1
2
3
4
5
6
7
8
9
10
|
# 预填充示例 ヾ(•ω•`)o
default_entry = Entry(root)
default_entry.insert(0, "在这里输入...")
default_entry.pack()
# 获取输入的按钮
def show_text():
print("你输入的是:", default_entry.get())
Button(root, text="打印输入", command=show_text).pack()
|
验证功能
可以通过validate
和相关选项进行输入验证:
1
2
3
4
5
6
7
8
9
10
|
# 只能输入数字的验证 (⊙ˍ⊙)
def only_numbers(char):
return char.isdigit()
validate_num = (root.register(only_numbers), '%S')
num_entry = Entry(root,
validate="key",
validatecommand=validate_num)
num_entry.pack()
|
绑定事件
常见的绑定事件:
<FocusIn>
: 获得焦点
<FocusOut>
: 失去焦点
<Return>
: 按下回车键
<Key>
: 按键事件
1
2
3
4
5
6
7
|
# 回车键事件示例 (`・ω・´)
def on_enter(event):
print("你按了回车键!内容是:", event.widget.get())
entry = Entry(root)
entry.bind("<Return>", on_enter)
entry.pack()
|
小贴士 💡
- 使用
xview_moveto
和xview_scroll
可以让长文本滚动
- 结合
StringVar
可以更方便地跟踪内容变化
- 设置
state="readonly"
可以创建只读输入框
希望这个指南对你有帮助!(づ。◕‿‿◕。)づ 现在去创建属于你的输入框吧~