Delphi 之 编辑框控件(TEdit)
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)的更多相关文章
- 通过编写串口助手工具学习MFC过程——(六)添加Edit编辑框控件
通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...
- MFC编程入门之二十五(常用控件:组合框控件ComboBox)
上一节讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是组合框 ...
- MFC编程入门之二十四(常用控件:列表框控件ListBox)
前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...
- 【转】VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)
原文网址:http://www.jizhuomi.com/software/189.html 上一节鸡啄米讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常 ...
- LabVIEW(十六):多列列表框控件
1.多列列表框控件:前面板右键>列表.表格和树>多列列表框2.默认情况下只显示列首,可设置显示行首:前面板选中多列列表框右键>显示>行首3.LabVIEW中提供42种自带的图标 ...
- VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)
上一节鸡啄米讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是 ...
- VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)
前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...
- 组合框控件 -- CComboBox
组合框控件 -- CComboBox 组合框其实就是把一个编辑框和一个列表框组合到了一起,分为三种:简易(Simple)组合框.下拉式(Dropdown)组合框和下拉列表式(Drop List)组合框 ...
- Combo Box (组合框)控件的使用方法
Combo Box (组合框)控件很简单,可以节省空间.从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的.用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本 ...
随机推荐
- oracle 12.1的删除和创建公共用户问题
版本12.1 ,cdb-rac模式 一个集群,4个节点,一个cdb,下面有12个pdb. os:linux 64 --- 删除用户 drop user c##test atler.log提示 ORA- ...
- 构建高可靠hadoop集群之5-服务级别授权
本人翻译自: http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/ServiceLevelAuth.html ...
- PHP将二位数组按照第二维的某个元素的值进行排序
例如: //原始数组是这样的,希望能够按照第二维中的run_date升序或者降序进行排序: $arr=array( 0=>array( 'run_date'=>'2017-11-21', ...
- thinkphp发送邮箱(以thinkphp5作为示例)。
第一步:设置我们的邮箱客户端授权码 第二步:下载相应的第三方类库(我这里用的PHPemail) 这是phpemailde 第三方类库的文件下载地址:https://github.com/PHPMail ...
- 2.1 进程控制之fork创建子进程
fork()函数 目标:熟悉fork创建一个和多个子进程子线程 函数原型:pid_t fork(void); 返回值:成功返回:① 父进程返回子进程的ID(非负) ②子进程返回 0 : 失败返回-1. ...
- 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 ...
- Leecode刷题之旅-C语言/python-13.罗马数字转整数
/* * @lc app=leetcode.cn id=13 lang=c * * [13] 罗马数字转整数 * * https://leetcode-cn.com/problems/roman-to ...
- ctf题目writeup(3)
题目地址: https://www.ichunqiu.com/battalion 1. 这个是个mp3,给的校验是为了下载下来的. 下来之后丢进audicity中 放大后根据那个音块的宽度来确定是 . ...
- PHP中文乱码分类及解决办法大全
PHP+MYSQL做网站开发通常都会碰到浏览器输出中文字符时乱码,这个问题的原因主要是因为HTML内容编码,PHP文件编码和MySQL数据库编码这三者不一致造成的.下面我们以UTF-8为例简述一下如何 ...
- json模块、os模块
一.eval模拟序列化操作 1.序列化 内存中的数据-------->转成一种中间格式(字符串)---------->存到文件中 dic={'name':'egon','age':18} ...