TEdit 组件主要用于数据的输入和显示和编辑等操作。

AutoSelect

  获取组件焦点。该属性只能在单行文本组件使用。值为True为选中。false则不选中。

BorderStyle

  设置编辑框控件的外观效果。当值为bsSingle,为一个单线边框。为bsNone则无边框

CanUndo

  该属性可以确定用户修改文本后可以undo方法回退。

CharCase

  设置编辑框控件文本的大小写。

如图所示

MaxLength

  设置文本的最大长度,为0表示长度没有限制。

PasswordChar

  用来显示字符通常用(*)符号来设置密码

ReadOnly

  设置只读,不能修改组件的文本内容

SelStart

  设置文本的起始位置,如果为0,则指向第一个文本。

SelLength

  设置文本的最大长度

示例 选中指定长度的文本如图所示

procedure TForm1.Button1Click(Sender: TObject);
begin
Edit3.SetFocus; //获取焦点
Edit3.SelStart:=StrToInt(Edit1.text); //设置字符的起始位置
Edit3.SelLength:=StrToInt(Edit2.text);//设置字符的个数
end;

TEdit组件的事件

OnChange

  编辑框组件被改变时触发该事件

示例 验证文本的合法性

procedure TForm1.Edit1Change(Sender: TObject);
var
str:string;
begin
str:='';
str:=Edit1.Text;
if Length(str)>0 then
if not(str[Length(str)]in ['0'..'9',#8]) then
begin
Application.MessageBox('请输入数字(','提示',MB_OKCANCEL+MB_ICONINFORMATION);
   Edit1.Text:=LeftStr(Str,Length(Str)-1);
end;
Edit1.SelStart:=Length(Edit1.text);
end;

OnEnter

  组件接受输入焦点时产生该事件,当窗口组件为激活状态时,可使事件处理执行指定的处理。

示例 组件焦点的设置

procedure TForm1.Edit1Enter(Sender: TObject);
begin
if Sender is TEdit then
(Sender as TEdit).Color := $00C8FFFF
else if Sender is TComboBox then
(Sender as TComboBox).Color := $00C8FFFF;
end; procedure TForm1.Edit1Exit(Sender: TObject);
begin
if Sender is TEdit then
(Sender as TEdit).Color := clWhite
else if Sender is TComboBox then
(Sender as TComboBox).Color := clWhite;
end;

OnExit

  当焦点离开时产生的事件

OnKeyPress

  按下键盘上的按键时产生该事件

示例 限制输入的数据

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['a'..'z','A'..'Z',#8]) then
begin
Application.MessageBox('只能输入英文字符!', '提示', MB_OKCANCEL + MB_ICONINFORMATION);
Key := #0;
end;
end;

OnKeyDown

  按下键盘上的按键触发该事件,该事件的key是一个整数,是由键盘的虚拟键值而定。

示例  显示键盘上对应按下的键值

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
Edit2.Text := IntToStr(Key);
if Shift = [ssShift] then
Edit1.Text := 'Shift'
else if Shift = [ssAlt] then
Edit1.Text := 'Alt'
else if Shift = [ssCtrl] then
Edit1.Text := 'Ctrl'
else
Edit1.Text := '';
end;

Delphi 之 编辑框控件(TEdit)的更多相关文章

  1. 通过编写串口助手工具学习MFC过程——(六)添加Edit编辑框控件

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  2. MFC编程入门之二十五(常用控件:组合框控件ComboBox)

    上一节讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是组合框 ...

  3. MFC编程入门之二十四(常用控件:列表框控件ListBox)

    前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...

  4. 【转】VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)

    原文网址:http://www.jizhuomi.com/software/189.html 上一节鸡啄米讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常 ...

  5. LabVIEW(十六):多列列表框控件

    1.多列列表框控件:前面板右键>列表.表格和树>多列列表框2.默认情况下只显示列首,可设置显示行首:前面板选中多列列表框右键>显示>行首3.LabVIEW中提供42种自带的图标 ...

  6. VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)

    上一节鸡啄米讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是 ...

  7. VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)

    前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...

  8. 组合框控件 -- CComboBox

    组合框控件 -- CComboBox 组合框其实就是把一个编辑框和一个列表框组合到了一起,分为三种:简易(Simple)组合框.下拉式(Dropdown)组合框和下拉列表式(Drop List)组合框 ...

  9. Combo Box (组合框)控件的使用方法

    Combo Box (组合框)控件很简单,可以节省空间.从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的.用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本 ...

随机推荐

  1. oracle 12.1的删除和创建公共用户问题

    版本12.1 ,cdb-rac模式 一个集群,4个节点,一个cdb,下面有12个pdb. os:linux 64 --- 删除用户 drop user c##test atler.log提示 ORA- ...

  2. 构建高可靠hadoop集群之5-服务级别授权

    本人翻译自: http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/ServiceLevelAuth.html ...

  3. PHP将二位数组按照第二维的某个元素的值进行排序

    例如: //原始数组是这样的,希望能够按照第二维中的run_date升序或者降序进行排序: $arr=array( 0=>array( 'run_date'=>'2017-11-21', ...

  4. thinkphp发送邮箱(以thinkphp5作为示例)。

    第一步:设置我们的邮箱客户端授权码 第二步:下载相应的第三方类库(我这里用的PHPemail) 这是phpemailde 第三方类库的文件下载地址:https://github.com/PHPMail ...

  5. 2.1 进程控制之fork创建子进程

    fork()函数 目标:熟悉fork创建一个和多个子进程子线程 函数原型:pid_t fork(void); 返回值:成功返回:① 父进程返回子进程的ID(非负) ②子进程返回 0 : 失败返回-1. ...

  6. Tomcat+nginx+keepalived+memcached实现双VIP负载均衡及Session会话保持

    准备好tomcat 第一台 tar vxf apache-tomcat-7.0.54.tar.gz mv apache-tomcat-7.0.54 /usr/local/tomcat tar vxf ...

  7. Leecode刷题之旅-C语言/python-13.罗马数字转整数

    /* * @lc app=leetcode.cn id=13 lang=c * * [13] 罗马数字转整数 * * https://leetcode-cn.com/problems/roman-to ...

  8. ctf题目writeup(3)

    题目地址: https://www.ichunqiu.com/battalion 1. 这个是个mp3,给的校验是为了下载下来的. 下来之后丢进audicity中 放大后根据那个音块的宽度来确定是 . ...

  9. PHP中文乱码分类及解决办法大全

    PHP+MYSQL做网站开发通常都会碰到浏览器输出中文字符时乱码,这个问题的原因主要是因为HTML内容编码,PHP文件编码和MySQL数据库编码这三者不一致造成的.下面我们以UTF-8为例简述一下如何 ...

  10. json模块、os模块

    一.eval模拟序列化操作 1.序列化 内存中的数据-------->转成一种中间格式(字符串)---------->存到文件中 dic={'name':'egon','age':18} ...