如题!

解决方案 »

  1.   

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
        begin
          if key in ['0'..'9','.',#8] then
          begin
            key:=#0;
            Messagebeep(0);
          end;
        end;
      

  2.   

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
          if not ((ord(key) > 128) or (key = #8))  then
          begin
            key:=#0;
          end;
    end;
      

  3.   

    試試﹕
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
    if byteType(String(Key),1)<>mbLeadByte then
      Key:=#0;
    end;
      

  4.   

    就是这个
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
          if not ((ord(key) > 128) or (key = #8))  then
          begin
            key:=#0;
          end;
    end;由于汉字的一半的asc值>128.
      

  5.   

    就是这个
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
          if not ((ord(key) > 128) or (key = #8))  then
          begin
            key:=#0;
          end;
    end;由于汉字的一半的asc值>128.
      

  6.   

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
          if not ((ord(key) > 128) or (key = #8))  then
          begin
            key:=#0;
          end;
    end;