自定义TEdit的允许输入字符

来源:互联网 发布:英语报刊阅读软件 编辑:程序博客网 时间:2024/05/05 16:32

向窗体上添加一个TEdit组件,用于显示用户输入的字符。添加组件后的窗体如图8-34所示。


图8-34  添加组件后的窗体
TEdit组件有一个OnKeyPress事件,在该事件中有一个Key参数,其中存储了用户当前输入的字符,如果设置这个参数为#0,就可以屏蔽用户的输入,从而实现自定义输入字符的功能,为此添加响应代码如下:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin    if not (Key in ['0'..'9', '.']) then    begin        Key:=#0 ;    end;end;
程序会判断用户输入的字符,如果范围不在从0到9的数字和小数点两者之中,那么就设置Key参数为#0,从而屏蔽用户的输入;反之正常显示用户的输入。
程序代码如下:
unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls; type  TForm1 = class(TForm)    Edit1: TEdit;    procedure Edit1KeyPress(Sender: TObject; var Key: Char);  private    { Private declarations }  public    { Public declarations }  end; var  Form1: TForm1;implementation{$R *.dfm} procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin    if not (key in ['0'..'9', '.']) then    begin        key:=#0 ;    end;end; end.

保存文件,然后按F9键运行程序,程序运行结果如图8-35所示,在TEdit组件中只能够接受数字和小数点。


图8-35  程序运行结果
利用与本实例相同的方法可以任意控制TEdit组件的输入字符。

0 0
原创粉丝点击