当前位置:编程问答 > Delphi >

Delphi标准控件-掩码编辑框(MaskEdit)

掩码编辑框(MaskEdit)是一种特殊的编辑框。使用它可以设计出许多复杂的输入 格式。在选用MaskEdit之后,需要为它设计一个输入格式。方法如下:

首先在窗体上将MaskEdit选中,在对象查看器(Object Inspector)中找到EditMask属性,双击它,弹出一个如下图所示的对话框。

对话框左上角的Input Mask编辑框用于输入掩码格式。掩码格式可以分为三部分,每个部分之间用分号“;”分开,如“!90:90:90:;1;_ ”。下面解释各输入格式符的意义:

Delphi标准控件-掩码编辑框(MaskEdit)

1. 输入格式的第一部分是掩码本身,也就是数据输入格式。在这一部分用一些特殊的格式符来表示应输入的字符类型及格式,如“!l0A9:C>ll<”这样一串输入格式掩码。常用的MaskEdit输入格式符有:

格式符 意义 l和L l表示该位置只可能是一个字母,可以用光标键跳过它,但是不能是其它类型的字符。L该位置必须是一个字符。 a和A a表示该位置只可能是一个字母或数字字符。A表示该位置必须是一个字母或数字字符。 c和C c表示该位置只可能是一个字母,C表示该位置必须有一个字母。 9和0 9表示该位置只可能是一个数字,0表示该位置必须有一个数字。      〈和〉 <格式符表示随后的字母均以小写的形式显示,直到遇到一个>格式字符或<>格式符。>格式符则和<正好相反。 〈〉 表示不作大小写转换,以输入时的形式为准。 \ 表示该格式符之后的那个掩码格式符将作为数据中的普通字符对待。当用户想在数据中放进一个掩码格式符时,应该在这个格式符前放一个\符号。如\A,\\等等。 # 表示该位置可能是一个数字或正符号。 ! 如有!表示数据前的空格将不被保存在数据中,没有!则数据后的空格不被保存。!格式符只能放在掩码格式符的第一个字符处。 ;和/ 标准的分隔符,可作为数据的一部分。其中/在显示时为‘-’而非/。     

2. 在输入格式中的第二部分只有0和1两种选择。如为1,则掩码中的非用户输入数据和标准分隔符等其它各种字符会作为数据的一部分保存;为0则不保存。

3. 输入格式的第三部分用于表示数据中的空位用那个字符代替显示。

在有了上述知识后,现在来设计一个例子。例如要输入一个汽车牌号如CA-300019 。该数据前两位为字母且为大写,第三位为一个系统分隔符号,后6位为数字。可以这样设计掩码格式:

!>LL/000000;1;_

掩码的第二部分取为1表示系统分隔符‘-’也将作为数据保存。第三部分的“_”表示在掩码编辑框中为空时,用“_”来表示空位。我们也可以用空格来标识空位。

又如一个邮编如PO-100083,其中PO表示邮政,是每个邮政编码中都有的前缀,可以这样设计掩码格式:

!PO/000000;1;_

在掩码设计对话框的右侧是Sample Masks,这里有系统预设的常用的掩码格式,如电话号码(Phone)、日期(Date)等。我们可以选择一个,然后进行必要的调整。对话框左下部是一个Test Input栏,我们可以在这里输入字符,以检测输入格式是否令人满意。

 

本文站长资源库 版权所有,未经批准转载必究

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,