用memo1.clear清空内容后光标显示在第2行 ,如何让他在第1行?

解决方案 »

  1.   

    真的是高手,我咋就做不到咧~~~~如果只是把光标移到最开始处就用下面的语句吧:
      Memo1.SelStart := 0;
      Memo1.SetFocus;
      

  2.   

    我是用的ctrl+回车键发送消息,发送完毕后清空的,结果光标就到了第2行腾迅的QQ就是到第1行的 
    用楼上的方法也不行
      

  3.   

    你用Ctrl+回车的时候实际有一个回车过去了,呵呵,所以换行了
      

  4.   

    你执行完Ctrl+回车后顺便将Key设置为#0
      

  5.   

    不如这样吧,在按键松开的时候删除最后一行procedure TForm1.Memo1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      if (Key=VK_Return) and (Shift=[ssCtrl]) then
      begin
        Memo1.Lines.Delete(Memo1.Lines.Count-1);
      end;
    end;
      

  6.   

    将你的处理程序放在Memo1.Lines.Delete(Memo1.Lines.Count-1);后面就可以了。
      

  7.   

    任你控制鼠標的呀:var
      P: TPoint;
    begin
      p :=Memo1.CaretPos;
      p.X :=2; //定位行
      p.Y :=4; //行所在的字符
      with Memo1 do
      begin
        CaretPos :=P;
        SetFocus;
      end;
    end;