简单问题,如何让Edit1只输入正负数,即正负整数
1.即只输入大于0的整数,小于0的整数.
2.且第一个数字不能为0,后面的可以出现。
3.负号只能出现在第一个位置,后面不能再出现。请问怎么做,不要其它控件,要同时满足上面3个条件。
1.即只输入大于0的整数,小于0的整数.
2.且第一个数字不能为0,后面的可以出现。
3.负号只能出现在第一个位置,后面不能再出现。请问怎么做,不要其它控件,要同时满足上面3个条件。
if key = '.' then Key := #0
else
if (key = #13) then
begin
if btndsave.Enabled then
btnDSave.Click;
if btnDModify.Enabled then
btnDModify.Click;
end
else
if key = #8 then key := #8
else
if (key < '0') or (key > '9') then
key := #0;只能输入数字,其他的自己在判断就行了,比如在OnChange事件中判断下就可以了
各种情况都要考虑到。
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9','-',#8]) then
key:= #0;
if (key='0')and((Edit1.Text='')or(Edit1.Text='-')) then
key:= #0;
if (key='-')and(Edit1.Text<>'') then
key:= #0;
end;