rvico TRichView Reference | Global constants and variables

RichViewEditCaretWidth, RichViewEditCaretWidthMode, RichViewEditCaretHeightExtra, RichViewEditMaxCaretHeight, RichViewEditMinCaretHeight, RichViewEditCaretPosition, RichViewEditCustomCaretSize

Top  Previous  Next

These typed constants allow to control the caret appearance in RichViewEdit.

Unit  RVERVData.


  TRVHorizontalCaretPosition =
    (rvhcpDefault, rvhcpCenter, rvhcpRight);
  TRVCaretWidthMode =
    (rvcwmDefault, rvcwmCharacter);
  RichViewEditCaretWidth: Integer                    = 0;
  RichViewEditCaretWidthMode: TRVCaretWidthMode      = rvcwmDefault;
  RichViewEditCaretHeightExtra: Integer              = 0;
  RichViewEditMaxCaretHeight: Integer                = 1000;
  RichViewEditMinCaretHeight: Integer                = 0;
  RichViewEditCaretPosition: TRVHorizontalCaretPosition = rvhcpDefault;
  RichViewEditCustomCaretSize: Boolean               = False;

Caret width

RichViewEditCaretWidthMode defines how the caret width (thickness) is calculated. The meaning of possible values are explained in the table below.




The caret width is calculated according to RichViewEditCaretWidth, see below.


The caret has width of the next character/item. When the caret is at the end of line, its width is calculated like in rvcwmDefault mode.

RichViewEditCaretWidth defines the width of the caret. The value 0 (default) is special, it means using the system caret thickness (defined in the "Ease of Access" of the Settings app (or the Control Panel, depending in the Windows version)).

srv_icon ScaleRichView note: TSRichViewEdit uses PageProperty.CaretPen.Width like RichViewEditCaretWidth.

Caret height

Value of RichViewEditCaretHeightExtra is added to the top and the bottom of the caret (negative values make the caret shorter, positive values make it longer).

RichViewEditMaxCaretHeight – maximum possible caret height.

RichViewEditMinCaretHeight – minimum possible caret height.

Custom caret size

If RichViewEditCustomCaretSize = True, OnMeasureCustomCaret event is called not only for a custom caret, but for the standard caret as well.

The event is called after the standard caret size is calculated, but before the caret is repositioned (initially, it is positioned to the right side of the insertion position.

Caret position

RichViewEditCaretPosition specifies how a wide caret is positioned relative to the insertion position.


Caret position


To the left side of the insertion position for items having BiDiMode = rvbdRightToLeft, to the right side otherwise.


Centered at the insertion position


To the right side of the insertion position

srv_icon ScaleRichView note: RichViewEditCaretPosition affects ScaleRichView as well.

TRichView © trichview.com