现在光标默认闪动是 | 的样子,有多个编辑框时不容易发现光标在何处,如何才能改变这个形状呢?比如改成 - 的样子闪动?

解决方案 »

  1.   

    // 不同风格的光标
    procedure TForm1.Edit1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
        CreateCaret(Edit1.Handle, 0, 10, 4);
        ShowCaret(Edit1.Handle);
    end;
    // 用图像做光标
    procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
        CreateCaret(Memo1.Handle, Image1.Picture.Bitmap.Handle, 0, 0);
        ShowCaret(Memo1.Handle);
    end;
      

  2.   

    谢谢楼上,在edit中可以实现了,不过我想在StringGrid中实现光标的形状,结果光标显示到右上角了,如何定位呢?