怎在TMemo控件的光标所在位置插入一个字符?我想在TMemo中,按空格键在TMemo光标位置插入一个字符
能不能实现?

解决方案 »

  1.   

    procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
    begin
      if (Key = ' ') then Key := '*'; //将空格替换为*号
    end;
      

  2.   

    将字符串插入光标所在位置的方法:
    //需要在Form上放置一个TMemo控件,一个TButton控件
    //在Button对象的OnClick事件中写如下代码procedure TForm1.Button1Click(Sender: TObject);
    Var
            curstr,frontstr,endstr:String;
            curcol,currow:integer;
    begin
    curcol:=Memo1.CaretPos.x;
    currow:=Memo1.CaretPos.y;
    curstr:=Memo1.Lines[currow];
    frontstr:=copy(curstr,0,curcol);
    endstr:=copy(curstr,curcol+1,length(curstr)-curcol);
    Memo1.Lines[currow]:=frontstr+'这是新插入的字符串'+endstr;
    end;