|
<< Нажмите, чтобы показать Содержание >> TCustomRichViewEdit.OnDrawCustomCaret [VCL и LCL] |
Позволяет нарисовать нестандартную каретку.
type
TRVDrawCustomCaretEvent = procedure (Sender: TCustomRichViewEdit;
Canvas: TCanvas; const Rect: TRVCoordRect) of object;
property OnDrawCustomCaret: TRVDrawCustomCaretEvent;
Нестандартная каретка рисуется, если CustomCaretInterval>0.
Событие OnMeasureCustomCaret вызывается перед каждым вызовом этого события.
Этот пример рисует каретку в виде прямоугольника/эллипса. В сочетании с примером из раздела OnMeasureCustomCaret он рисует прямоугольник/эллипс вокруг символа справа от каретки.
procedure TMyForm.MyRichViewEditDrawCustomCaret(
Sender: TCustomRichViewEdit;
Canvas: TCanvas; const Rect: TRVCoordRect);
const
f: Boolean=True;
var
r: TRVCoordRect;
begin
if f then
Canvas.Pen.Color := clRed
else
Canvas.Pen.Color := clBlue;
f := not f;
r := Rect;
Canvas.Brush.Style := bsClear;
if f then
Canvas.Rectangle(r)
else
Canvas.Ellipse(r);
end;