Entry 控件

# Entry 控件是 Tkinter GUI 编程中的基础控件之一,它的作用就是允许用户输入内容,
# 从而实现 GUI 程序与用户的交互,比如当用户登录软件时,输入用户名和密码,此时就需要使用 Entry 控件
import tkinter as tk

# 创建主窗口
root = tk.Tk()
root.title("Entry 示例")

# 设置窗口的初始大小
root.geometry("400x400")

# 创建一个StringVar对象
text_var = tk.StringVar()
entry = tk.Entry(root,
                 bg='white',
                 borderwidth=5,  # 获不获取焦点都有的边框宽度
                 cursor='heart',  # 设置鼠标光标在组件上时的形状
                 exportselection=0,  # 控制是否将选中的文本复制到剪贴板0无法选中1可以选中
                 font=("Helvetica", 15, "bold"),  # 文本的字体和大小和粗细
                 fg='black',  # 文本颜色
                 highlightbackground="blue",  # 获得焦点时的边框颜色
                 highlightcolor="green",  # 获取焦点时边框内部高亮颜色
                 highlightthickness=2,  # 获取焦点时的边框宽度

                 insertbackground='pink',  # 设置插入光标的颜色
                 insertborderwidth=2,  # 设置插入光标的边框宽度
                 insertontime=1000, # 设置光标在开启状态下的时间长度
                 insertwidth='20',#光标的宽度
                 justify='left',#设置文本的对齐方式(这里设置的是左对齐)
                 relief='sunken',#边框样式
                 selectbackground='red',#设置选中文本的背景色
                 selectborderwidth=10,#设置选中文本的边框宽度
                 selectforeground='green',#设置选中文本的文本颜色
                 show='*',#设置输入框内容的显示字符,常用于密码输入框
                 state='normal',#组件状态
                 textvariable=text_var

)
# 将一些文本设置到StringVar对象中,这会自动更新Entry组件的显示
text_var.set("这是绑定的文本")
entry.grid(row=0, column=0)
# 启动事件循环
root.mainloop()



# background(或 bg): 设置背景颜色。
# borderwidth(或 bd): 设置边框宽度。


# cursor: 设置鼠标光标在组件上时的形状。
# exportselection: 控制选中的文本是否被复制到剪贴板。默认为 1(选中),设置为 0 则忽略复制。
# font: 设置文本字体。
# foreground(或 fg): 设置文本颜色。


# highlightbackground="blue":设置 Entry 部件在获得焦点时边框的颜色为蓝色。
# highlightcolor="green":设置 Entry 部件在获得焦点时边框内部的高亮颜色为绿色。这通常指的是边框与 Entry 部件内部之间的区域。
# highlightthickness=2:设置 Entry 部件在获得焦点时边框的宽度为2个像素


# insertbackground: 设置插入光标的颜色。
# insertborderwidth: 设置插入光标的边框宽度。

# insertofftime: 用于 insert 选项的闪烁间隔(关闭状态)。
# insertontime: 用于 insert 选项的闪烁间隔(开启状态)。
# insertwidth: 设置插入光标的宽度。

# justify: 设置文本的对齐方式,可以是 "left", "center", 或 "right"。
# relief: 设置边框样式,例如 "sunken", "raised", "flat" 等。

# selectbackground: 设置选中文本的背景颜色。
# selectborderwidth: 设置选中文本的边框宽度。
# selectforeground: 设置选中文本的前景色。

# show: 设置用于显示的字符,用于创建密码输入框,例如 "*"。
# state: 设置组件的状态,可以是 "normal" 或 "disabled"。

# takefocus: 控制组件是否可以接受焦点。#没感觉有什么用,省略
#在Tkinter中,takefocus 属性是一个布尔值,它决定了一个组件是否可以接收焦点。
# 当组件设置了 takefocus=True 时,
# 用户可以通过Tab键、Shift+Tab键或使用鼠标来将焦点移动到该组件上。
# 当组件设置了 takefocus=False 时,它不会接收焦点,这意味着用户无法通过键盘或鼠标与该组件交互


# textvariable: 将 Entry 组件的值绑定到一个 StringVar 对象。

# width: 设置 Entry 组件的宽度(字符数)。

# xscrollcommand: 设置滚动条命令,用于将 Entry 组件与水平滚动条关联。
## 创建一个Entry部件,并设置xscrollcommand属性
# entry = tk.Entry(root, xscrollcommand=lambda x, y: x.set("scroll position"))
# # 创建水平滚动条组件
# hbar = tk.Scrollbar(root, orient=tk.HORIZONTAL)
# # 将Entry部件和水平滚动条组件关联起来
# hbar.config(command=entry.xview)
# entry.config(xscrollcommand=hbar.set)


# textvariable: 绑定一个 StringVar 对象,用于获取和设置输入框的值。
#创建了一个 StringVar 对象 text_var,并将其绑定到 Entry 组件。
# 当我们设置 text_var 的值时,Entry 组件的文本会自动更新为新的值。
# 反之,当我们更改 Entry 组件的文本时,text_var 的值也会相应地更新
#text_var = tk.StringVar()
# 创建一个Entry部件,并将其与StringVar对象绑定
# entry = tk.Entry(root, textvariable=text_var)
# # 将一些文本设置到StringVar对象中,这会自动更新Entry组件的显示
# text_var.set("这是绑定的文本")

# 动态数据类型
# StringVar(): 用于字符串类型的数据。
# BooleanVar(): 用于布尔类型的数据。
# DoubleVar(): 用于浮点类型的数据。
# IntVar(): 用于整型数据

你可能感兴趣的:(python)