我要在TEdit中限制只能输入数字,退格,回车,和逗号。当然前几个很好实现,就这个逗号不容易处理。KeyPress事件不处理逗号的ASCII码。要是能有代码示例一下再好不过。请高手指点一二。

解决方案 »

  1.   

    可以变通嘛,在OnChange的时候,判断输入的最后一位,如果是',',把最后一位去掉
      

  2.   

    玉米的方法不错,就是这样not (rightstr(edit1.text,1) in ['0'..'9',#13,','] then exit;
      

  3.   

    procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      ShowMessage(Inttostr(ord(Key)));
    end;
      

  4.   

    可以的在KeyDown 事件中处理case Word of
       0..9 :
       13 :
       #退格 :
       44 :
    else
       Key = 0   
    end