在form的onpreview事件中判断每一个按键是否合符要求。通常是和ASCII码作判断。

解决方案 »

  1.   

    在Form的Onpreview事件中用如下语句判断
    if (not(Key  in [规定的输入字符])) then
            Key := #0;
      

  2.   

    对不起,我是一个新手。可不可以麻烦你们说清楚一些。你们所说的form的onpreview事件在哪里?是在form的events里面找吗?我怎么找不到。还有,我用的是edit控件,和maskedit控件有什么不一样了?为什么用maskedit控件就可以了?难道不要做判断了吗?
      

  3.   

    将窗体的keypreview设为true
    procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
    begin
      if not (key in ['0'..'9','a'..'f']) then
        key:=#0;
    end;
    如果满意,可要给点分呀,老兄!
      

  4.   

    哥们,你不用用maskedit,用edit就足够了。
    keypreview是窗体的一个属性,在对象观察器中设置就行。
    然后在窗体的onkeypress事件中写上上面两行代码就行
      

  5.   

    procedure TForm1.Edit1Press(Sender: TObject; var Key: Char);
    begin
      if not (key in ['0'..'9','a'..'f',#13,#8,'+','*','-','/']) then
        key:=#0;
    end;
    如果满意,可要给点分呀,老兄! 
      

  6.   

    Cocacola说的对!
    这些基本问题,Delphi都为您准备好了。当然要是练手的话另说了。
      

  7.   

    抱歉,把Colacoca的名字写错了!
      

  8.   

    To 花意花大哥:MaskEdit是有限制的输入,可以选择不同国家的限制输入,也可以自定义限制掩码。