tkinter的Entry设置为不可编辑状态
前
首先我们知道,tkinter中有许许多多的控件,其中使用频繁的控件之一就是Entry(输入框),那么怎么设置它为不可编辑状态呢?
state选项
一般我们在写Entry的时候只传入了一个master参数,也就是这样,
from tkinter import *
root = Tk()
root.geometry('200x200')
lf = LabelFrame(root, text='默认状态')
lf.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.5)
ent1 = Entry(lf)
ent1.place(relx=0.1, rely=0.25, relwidth=0.8)
root.mainloop()
效果是这样的:

实际上Entry有一个参数叫state ,它的值有normal, disable, readonly
其实看到这里我们就能大概知道各个状态了。
让我们逐一试试:
normal:
from tkinter import *
root = Tk()
root.geometry('200x200')
lf = LabelFrame(root, text='normal状态')
lf.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.5)
ent1 = Entry(lf, state='normal')
ent1.place(relx=0.1, rely=0.25, relwidth=0.8)
root.mainloop()
normal效果:

disable:
这里为了演示效果,我们在Entry中插入一个值,看是否能显示
from tkinter import *
root = Tk()
root.geometry('200x200')
lf = LabelFrame(root, text='disable状态')
lf.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.5)
ent1 = Entry(lf, state='disable')
ent1.insert(END, 'adada')
ent1.place(relx=0.1, rely=0.25, relwidth=0.8)
root.mainloop()
disable效果:

readonly:
为了演示效果,也是提前插入一个值。
但是readonly是可读,如果我们在初始化时就设置可读,那么之后Entry的内容就无法再编辑
from tkinter import *
root = Tk()
root.geometry('200x200')
lf = LabelFrame(root, text='readonly状态,初始化设置')
lf.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.5)
ent1 = Entry(lf, state='readonly')
ent1.insert(END, 'adad')
ent1.place(relx=0.1, rely=0.25, relwidth=0.8)
root.mainloop()
readonly1效果:

我们可以在处理过Entry的文本后,利用config函数,再将其state设置为readonly,这样更加常用。
from tkinter import *
root = Tk()
root.geometry('200x200')
lf = LabelFrame(root, text='readonly状态,之后设置')
lf.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.5)
ent1 = Entry(lf)
ent1.insert(END, 'adad')
ent1.config(state='readonly')
ent1.place(relx=0.1, rely=0.25, relwidth=0.8)
root.mainloop()
readonly2效果:

tkinter的Entry设置为不可编辑状态的更多相关文章
- Easyui 设置datagrid 进入编辑状态,保存结束编辑
在datagrid中如何实现让一行进入编辑状态,修改数据后,保存信息呢? //点击列表变成文本框,进入可编辑状态 $(function () { var doc = $(document), tabl ...
- easyui textbox 设置只读不可编辑状态
在使用easyul的时候,发现输入框内容及不容易获取与设置,用jQuery的方式大部分失效.依稀记得好像是因为easyul会在原页面的基础上,生成了一些新的独有样式,并且暂时覆盖掉使用了easyul的 ...
- easyui textbox combobox 设置只读不可编辑状态
输入框 textbox $("#xx").textbox('setValue','value'); //设置输入框的值 $('#xx').textbox('textbox').a ...
- Java中如何设置表格处于不可编辑状态
代码片段如下: 这样的话就可以将表格设置为不可编辑状态
- jqgrid 批量启动所有行为可编辑状态
有时,为操作方便,需要将jqgrid表格设置为一直处于编辑状态,用户只需要在对应的编辑区填写自己信息,不再频繁的去触发行编辑和保存. 参考代码如下: //$gridCase为传入jqgrid对象 fu ...
- tableview 编辑状态设置
#pragma mark - tableview 编辑状态设置 -(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSI ...
- EditText设置可以编辑和不可编辑状态
1.首先想到在xml中设置android:editable="false",但是如果想在代码中动态设置可编辑状态,没有找到对应的函数 2.然后尝试使用editText.setFoc ...
- TFS中设置任务中的“计划开始时间”为可编辑状态
问题现象 如果使用TFS系统的默认模板CMMI新建团队项目,你会发现在网页浏览器中,任务工作项的"计划开始日期"和"计划结束日期"的类型是普通字符,并且不能修改 ...
- [C1] C1ComboBox 的非编辑状态优化
一.前言 先看看 WPF 自带的 ComboBox 在非编辑状态,自定义 ItemTemplate 的情况下,效果如下图所示: 其当前选中的项(红框内)与自定义的 ItemTemplate 一样: 但 ...
- 设置DIV可编辑
<div id="move" contentEditable="true">可编辑</div> 设置contentEditable属性可 ...
随机推荐
- Android笔记--Android studio里面打开数据库详解
1.下载Database Navigator插件,然后需要重启Android studio 2.然后会总界面这里.出现这样一个图标 然后选中Database Brower: 3.弹出这样一个界面 然后 ...
- 音质效果不错的Pcie声卡之CM8828听歌声卡
CM8828芯片是cmedia骅讯公司生产的,采用这个芯片的声卡价格不一,便宜的100多,贵一点的500多.价位在100多买到这款声卡还是比较实惠的,再高一点的声卡都是堆料的.CM8828声卡是原生的 ...
- Knockin' On PHP's Door ---PHP入门必知(持续更新)
1.->.=> 和 :: 区别: :: 类中调用静态方法时用-> 类中调用属性和非静态方法=> 是键值对,比如在关联数组中用 $arr = ["name&quo ...
- ServiceAccounts 及 Secrets 重大变化
关于 ServiceAccounts 及其 Secrets 的重大变化 kubernetes v1.24.0 更新之后进行创建 ServiceAccount 不会自动生成 Secret 需要对其手动创 ...
- GitLab 安装部署使用
GitLab介绍 GitLab:是一个基于Git实现的在线代码仓库托管软件,你可以用gitlab自己搭建一个类似于Github一样的系统,一般用于在企业.学校等内部网络搭建git私服. 功能:Gitl ...
- SpringBoot 整合 JDBC 实例
0.数据库表 CREATE DATABASE springboot; USE springboot; CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_ ...
- SQL Case条件判断语句
问题描述:在表中取到一些值做出判断,配合监控监测一些表中的数据.使用select case when if 来做条件查询判断 CASE 表达式遍历条件并在满足第一个条件时返回一个值(类似于 if-th ...
- flume基本安装与使用
解压flume包 到/usr/local/src/目录下 [root@hadoopha01 pack]# tar -zxvf apache-flume-1.7.0-bin.tar.gz -C /usr ...
- 活动预告 | Jax Diffusers 社区冲刺线上分享(还有北京线下活动)
我们的 Jax Diffuser 社区冲刺活动已经截止报名,全球有 200 多名参赛选手成功组成了约 70 支队伍共同参赛. 为了帮助参赛者更好的完成自己的项目,也为了与更多社区成员们分享扩散模型和生 ...
- RDIFramework.NET WinForm版新增通知公告、系统新闻模块
1.系统新闻功能描述 系统新闻模块,用户可以根据实际情况做相应应用,如用在内部业务系统的展示中或网站上新闻的展示.新闻可以分类进行管理,非常的实用.系统新闻管理主要分为添加.修改.删除与移动系统新闻. ...