自定义TEdit的允许输入字符

向窗体上添加一个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;
interface
uses
  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组件的输入字符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值