文本框Entry

文章目录

  • 文本框Entry
    • 文本框基本概念
    • options参数
    • 使用show隐藏字符
    • get()方法
    • insert()方法
    • delete()方法
    • 例子:计算
      • eval()函数介绍
      • demo
文本框基本概念

单行的文本框,是用于输入的最基本Widget控件,可以使用它输入单行字符串,如果所输入的字符串长度大于文本框的宽度,所输入的文字会自动隐藏造成部分内容无法显示。

文本框Entry限定是单行文字,如果想要处理多行文字需使用Widget控件中的Text

Entry(父对象,options,...)

Entry( )方法的第一个参数是父对象,表示这个文本框将建立在哪一个窗口内。

options参数
  1. bg或background:背景色彩
  2. borderwidth或bd:边界宽度默认是2像素
  3. command:当用户更改内容时,会自动执行此函数
  4. cursor:当鼠标光标在复选框上时的光标形状
  5. exportselection:如果执行选取时,所选取的字符串会自动输出至剪贴板,如果想要避免,可以设置exportselection=0
  6. fg或foreground:前景色彩
  7. font:字形
  8. height:高,单位是字符高
  9. highlightbackground:当文本框取得焦点时的背景颜色
  10. highlightcolor:当文本框取得焦点时的颜色
  11. justify:当含多行文字时,最后一行的对齐方式
  12. relief:默认是relief=FLAT,可由此控制文字外框
  13. selectbackground:被选取字符串的背景色彩
  14. selectborderwidth:选取字符串时的边界宽度,预设是1
  15. selectfroeground:被选取字符串的前景色彩
  16. show:显示输入字符,例如,show='*'表示显示星号,常用于输入密码字段
  17. state:输入状态,默认是NORMAL表示可以输入,DISABLE则表示无法输入
  18. textvariable:文字变量
  19. width:宽,单位是字符宽
  20. xscrollcommand:在x轴使用滚动条

例子

建立标签和文本框,输入姓名和地址

from tkinter import *
root = Tk()
root.title("demo")
nameL = Label(root,text="Name")
addressL= Label(root,text="Address")
nameE = Entry(root)
addressE = Entry(root)#布局
nameL.grid(row=0)
addressL.grid(row=1)
nameE.grid(row=0,column=1)
addressE.grid(row=1,column=1)root.mainloop()

grid(row=0),在没有设置“column=x”的情况下,系统将自动设置“column=0”

使用show隐藏字符

show参数设置隐藏输入字符,常被应用于密码的输入控制

当输入密码时所输入的字符将隐藏并用“*”字符

from tkinter import *
root = Tk()
root.title("demo")
nameL = Label(root,text="Name")
pwdL= Label(root,text="Pwd")
nameE = Entry(root)
pwdE = Entry(root,show="*")#布局
nameL.grid(row=0)
pwdL.grid(row=1)
nameE.grid(row=0,column=1)
pwdE.grid(row=1,column=1)root.mainloop()

get()方法

获得目前Entry的字符串内容

Widget控件有一个常用方法Quit,执行此方法时Python Shell窗口的程序将结束,但是此窗口应用程序继续运行。

例子

  1. Login和Quit功能按钮
  2. 单击Login功能按钮,列出所输入的Account和Password
  3. 单击Quit按钮,则Python Shell窗口中程序执行结束,但是屏幕上仍可以看到此应用窗口
from tkinter import *def printInfo():print("Account: %s\r\nPwd: %s"%(accountE.get(),pwdE.get()))root = Tk()
root.title("demo")accountL = Label(root,text="Account")
pwdL= Label(root,text="Pwd")accountE = Entry(root)
pwdE = Entry(root,show="*")loginbtn = Button(root,text="Login",command=printInfo)
quitbtn = Button(root,text="Quit",command=root.quit)#布局
accountL.grid(row=0)
pwdL.grid(row=1)
accountE.grid(row=0,column=1)
pwdE.grid(row=1,column=1)
loginbtn.grid(row=2,column=0,sticky=W,pady=5,padx=5)
quitbtn.grid(row=2,column=1,sticky=E,pady=5,padx=5)root.mainloop()
insert()方法

insert(index,s)方法在Widget的Entry控件中插入字符串,字符串会插入在index位置

可以使用这个方法为文本框建立默认的文字,通常会将它放在Entry( )方法建立完文本框后

accountE = Entry(root)
pwdE = Entry(root,show="*")accountE.insert(0,"wkk") #默认内容
pwdE.insert(0,"wkk")     #默认内容

delete()方法

delete(first,last=None) 方法删除Entry内的从第first字符到第last-1字符间的字符串

删除整个字符串可以使用delete(0,END)

accountE.delete(0,END) # 删除所有内容
pwdE.delete(0,END)
例子:计算
eval()函数介绍

该函数可以直接传回字符串数学表达式的计算结果

result = eval(expression) # expression是字符串
demo
from tkinter import *
def cal():out["text"] =  "结果: " + str(eval(equ.get()))root = Tk()
root.title("calc")label = Label(root,text="请输入数学表达式")
equ = Entry(root)
btn = Button(root,text="计算", command=cal)
out = Label(root)label.pack()
equ.pack(pady=5)
out.pack()
btn.pack(pady=5)root.mainloop()

Tkinter:文本框Entry相关推荐

  1. tkinter向文本框里加内容_给tkinter文本框添加右键菜单

    给tkinter文本框添加右键菜单 需求:直接右键点击使用tkinter创建的文本框是不会弹出菜单的.我们需要实现右键点击tkinter框架下的Entry对象.Text对象后弹出右键菜单可复制.粘贴和 ...

  2. python滚动文本框_调整滚动Tkinter文本框的大小

    我想要一个滚动的Tkinter文本框来填充最大的分配空间.我有点工作...在 由于某些原因,当我拉伸窗口时,文本小部件很好:但是,滚动条在x轴上有大量的填充.在 第二个问题是当我缩小窗口时,屏幕上的滚 ...

  3. tkinter文本框小功能(6):锚点

    tkinter文本框小功能(6):锚点 引言 添加标识 添加锚点 python层面 Tin层面 结语 引言 锚点之一概念在文本浏览中很常见,那就是在同一页面的文本内容在,添加一个锚点标识符,指向一个确 ...

  4. tkinter文本框同步滚动

    tkinter文本框同步滚动 引言 尝试 改进 实现 总结 引言 不仅是在CSDN的Markdown编辑器中,在很多编辑器里,编辑文本框和呈现文本框是可以同步滚动的.这样既能体现即时呈现,也能方便编写 ...

  5. python tkinter 文本框全选_Python Tkinter Entry(文本框)

    Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) Type: color 说明:文本框的背景颜色 ...

  6. python获取文本框里输入的值_如何从Tkinter文本框小工具获取输入?

    要从python 3中的文本框中获取Tkinter输入,我使用的完整学生级程序如下: #Imports all (*) classes, #atributes, and methods of tkin ...

  7. python怎么设置文本框大小_如何在Python中更改Tkinter文本框的宽度和高度?

    所以我一直在用Tkinter在Python上开发一个计算器.不过,我想把按钮隔开,而不是把它们直接放在一起.我不使用root.Frame函数.这是我的代码:from Tkinter import * ...

  8. gui设置可编辑文本框的回调函数_用Tkinter制作Python程序的图形用户界面(GUI),打包后比Qt5减少60M(77.5%)(实例63)...

    实例61使用PyQt5制作了图形用户界面(GUI).这个香是香,但是打包后的安装文件太大(约80M),感觉有些美中不足啊.由于这个GUI实在简单,从现实角度实在用不着高大上的PyQt5,所以改用Pyt ...

  9. Python GUI设计——Entry文本框、文字区域Text

    目录 1.Entry 1.1基本概念 1.2使用show参数隐藏输入的字符 1.3Entry的get()方法 1.4Entry的insert()方法 1.5Entry的delete()方法 1.6计算 ...

最新文章

  1. python 比较列表相邻元素(找相同或去重)
  2. 【项目管理】绩效域-工件裁剪对照(工件维度)
  3. Java中therad_java中Thread的深入了解(一)
  4. Error while retrieving the leader gateway. Retrying to connect to akka.tcp://flink@laptop:xxxx
  5. jvm(2)-java内存区域
  6. python随机出100道加法题_自动出题随机100题-20以内加减法全部算式
  7. 小成本、大体验,“听歌自由”时代来临
  8. 用ANSYS画矩形_用SolidWorks画一个带波浪纹路的瓶子
  9. 七牛直播云播放鉴权-时间戳防盗链
  10. oracle用plsql导出表结构与数据
  11. 老徐和阿珍的故事:CAP是什么?超级爱放P吗?
  12. 内九外七皇城四,九门八点一口钟_ywyuan_新浪博客
  13. 【php-fpm】重启、启动、关闭
  14. 认真学习InnoDB的数据存储结构中的区、段与表空间
  15. 纯卡西欧计算器5800P坐标正反算
  16. 将时分秒的时间转为2020-11-12T20:00:00.000+08:00格式
  17. 通过静态LSP、LDP LSP、MPLS TE三种方式实现总部与分支的互通
  18. 快手视频批量采集 php,【原创开源】快手爬虫,根据eid批量爬取用户的所有图集和视频【已失效】...
  19. 接口请求中post与put的区别
  20. 1、jdk下载安装与Exlipse配置Tomcat搭建JavaWeb(JSP)开发环境

热门文章

  1. spring data jpa 执行sql
  2. java 打印大小设置_使用QPrinter设置自定义纸张尺寸无法正确打印
  3. python实习——03
  4. 多年Excel使用经验汇总
  5. 邮箱功能开发总结(以新浪邮箱为例子)
  6. 仿站高手是怎么练成的 分析仿站必备知识总结
  7. 大连埃森哲Java面试题
  8. str(n)cpy的注意事项以及memset的简单使用
  9. Python深度学习与机器视觉(一)
  10. 播放器上音频断续问题的原因