我想吧edit1里面的某个字符转换成ascii码然后+1再转换成字符输出到edit2.
可是碰到下面问题:var   i:integer;
   i:=inttostr(ord( Copy(Edit1.Text,3,1)))+1;    到上面这句就提示出错,
而且怎么转换成字符输出呢? 难道用edit2.text:=char(i)?

解决方案 »

  1.   


    var
     i:integer;
     s:string;
    begin
      s:=Copy(Edit1.Text,3,1);
      i:=ord(s[1])+1;
      showmessage(inttostr(i));//测试
    end;
      

  2.   

    edit2.text:=inttostr(ord( Copy(Edit1.Text,3,1))+1);
      

  3.   

      
      function StringToAscII(const Value: String):String;
      var
        I: Integer;
      begin
        Result:= '';
        for I:= 1 to Length(Value) do
          Result:= Result+IntToStr(Ord(Value[I]));
      end;
      

  4.   


    var
     i:integer;
     s:string;
    begin
      s:=Copy(Edit1.Text,3,1);
      i:=ord(s[1])+1;
      edit2.text:=inttostr(i);//测试
    end;
      

  5.   

    2楼和我的语句出现同样的错误.
    一楼的关键是怎么把i的值转换层字符输出到edit2呢?
    char(i)是不行的啊.
      

  6.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
     i:integer;
     s:string;
    begin
      s:=Copy(Edit1.Text,3,1);
      i:=ord(s[1])+1;
      edit2.text:=chr(i);//测试
    end;
      

  7.   

    昏迷,输出我用chr(i)这次编译通过了....无语
    谢谢大家
    估计是DF的问题
      

  8.   

    var  
     str:integer;
       str:=Chr(ord( Copy(Edit1.Text,3,1)+1));
      

  9.   

    ord是取字符的ASC码值,Chr是把ASC码值转化成对应的字符var  
     str:integer;
       str:=Chr(ord( Copy(Edit1.Text,3,1)+1));