|
<< Нажмите, чтобы показать Содержание >> TRVStyle.OnDrawCheckpoint |
Происходит при рисовании закладки.
property OnDrawCheckpoint: TRVDrawCheckpointEvent;
VCL и LCL:
type
TRVDrawCheckpointEvent =
procedure (Sender: TRVStyle; Canvas: TCanvas;
X,Y: TRVCoord; ItemNo: Integer; XShift: TRVCoord;
RaiseEvent: Boolean; Control: TControl;
var DoDefault: Boolean) of object;
FireMonkey:
type
TRVDrawCheckpointEvent =
procedure (Sender: TRVStyle; Canvas: TRVFMXCanvas;
X,Y: TRVCoord; ItemNo: Integer; XShift: TRVCoord;
RaiseEvent: Boolean; Control: TControl;
var DoDefault: Boolean) of object;
Это событие можно использовать для нестандартного рисования закладок.
Событие происходит только в том случае, если опция rvoShowCheckpoints включена в TCustomRichView(Control).Options.
Входные параметры:
Sender – компонент TRVStyle, вызвавший событие.
Canvas – канва для рисования.
X, Y – координаты левого верхнего угла элемента, связанного с рисуемой закладкой. Если это последняя закладка в документе, не связанная ни с одним элементом, X = -1.
ItemNo – номер этого элемента в Sender.RVData. Для закладки, не связанной с элементом, ItemNo = -1.
XShift – величина горизонтальной прокрутки компонента TRichView (>= 0).
RaiseEvent – флажок вызова события рисуемой закладки.
Control – компонент TRichView.
DoDefault имеет значение True.
«Скрытый» входной параметр:
Sender.RVData: TPersistent – документ, содержащий элемент с этой закладкой. Перед использованием его следует привести к типу TCustomRVFormattedData.
Выходные параметры:
DoDefault – установите в False, чтобы отменить стандартное рисование. Стандартная процедура рисует горизонтальную пунктирную линию с небольшим кружком в точке (X, Y). Цвет линии задаётся свойством CheckpointColor или CheckpointEvColor в зависимости от значения RaiseEvent.
Используя ItemNo и Sender.RVData, можно получить дополнительную информацию об элементе и закладке.
Например:
uses ..., CRVFData;
...
var
CheckpointData: TCheckpointData;
CheckpointTag: TRVTag;
CheckpointName: String;
begin
if ItemNo>=0 then
begin
CheckpointData :=
TCustomRVFormattedData(Sender.RVData).GetItemCheckpoint(
ItemNo));
TCustomRVFormattedData(Sender.RVData).GetCheckpointInfo(
CheckpointTag, CheckpointName, RaiseEvent);
...
end;
end;
См. также свойства:
▪CheckpointColor, CheckpointEvColor.
См. также:
Демонстрационный проект:
▪Demos\*\Assorted\Custom Draw\CustomDraw\