以下是按键事件:
procedure TForm3.Edt1KeyPress(Sender: TObject; var Key: Char);
begin
if not(Key in [#8, '0' .. '9']) then
begin
memo1.Clear;
Print('Numbers only !');
Key := #0;
end;
edt1.MaxLength := 12;
end;
所以这是故事:
我想自动完成我的TEdit。 每次我输入TEdit,它都会自动填写我的(任意)数字。只需在第一个数字后面加上'0',它将被替换为第二个数字被输入...并停在最大长度上(设置为12)。
procedure TForm3.btn1Click(Sender: TObject);
var key : Char;
begin
if Trim(edt1.Text) = '' then
begin
memo1.Clear;
Print('Please input your number');
Exit
end;
// Text number CAN NOT LESS than 12 digits. I think it's better with auto-complete.
end;
答案 0 :(得分:8)
TMaskEdit
000000000000;0;0
的{{3}}将完全按照您的意愿行事,无需编写代码并处理 Del 等内容, Backspace 或 LeftArrow RightArrow 键。