|
<< Нажмите, чтобы показать Содержание >> TRVFootnoteItemInfo |
TRVFootnoteItemInfo – это класс, представляющий сноску внизу страницы в документе ТРВ-Редактора. Это не компонент. Объекты этого класса создаются в коде и добавляются в компонент TRichView (см. AddItem) или вставляются в компонент TRichViewEdit (см. InsertItem). Тип (стиль) этого типа элемента: rvsFootnote (-203).
Модуль [VCL/FMX] RVNote / fmxRVNote.
Синтаксис
TRVFootnoteItemInfo = class(TRVFootOrEndnoteItemInfo)
TObject
TPersistent
TRVNonTextItemInfo
TRVRectItemInfo
Тип нумерации сносок задаётся свойством FootnoteNumbering компонента TRVStyle (свойство NumberType, унаследованное от TRVSeqItemInfo, игнорируется).
Перебрать все сноски в документе можно с помощью функций RVGetFirstFootnote и RVGetNextFootnote.
Для присваивания свойства TextStyleNo в вызове конструктора используйте функцию RVGetNoteTextStyleNo.
В компоненте TCustomRichView все сноски нумеруются последовательно. Однако при печати нумерация сносок может начинаться заново для каждой страницы, см. свойство FootnotePageReset компонента TRVStyle.
Ограничение: высота текста сноски (Document) не должна быть больше высоты страницы. В отличие от концевых сносок, этот вид сноски печатается на одной странице целиком.
Чтобы изменять свойства этого элемента операциями редактирования, используйте SetCurrentItemExtraIntPropertyEx и SetCurrentItemExtraStrPropertyEx.
В этом примере в rveMain (TCustomRichViewEdit) вставляется новая сноска. Значение TextStyleNo для неё возвращается функцией RVGetNoteTextStyleNo на основе текущего стиля текста (с номером rveMain.CurTextStyleNo).
Документ (Document) этой сноски содержит одну ссылку на неё (её TextStyleNo возвращается функцией RVGetNoteTextStyleNo на основе стиля с номером 0) и один символ пробела со стилем 0.
var
FootNote: TRVFootnoteItemInfo;
NoteRef: TRVNoteReferenceItemInfo;
begin
FootNote := TRVFootnoteItemInfo.CreateEx(rveMain.RVData,
RVGetNoteTextStyleNo(rvs, rveMain.CurTextStyleNo), 1, False);
NoteRef := TRVNoteReferenceItemInfo.CreateEx(FootNote.Document,
RVGetNoteTextStyleNo(rveMain.Style,0));
FootNote.Document.AddItem('', NoteRef);
FootNote.Document.AddNL(' ', 0, -1);
if rveMain.InsertItem('', FootNote) then
...
end;
Раздел справки по классу TRVNoteReferenceItemInfo содержит пример, показывающий, как редактировать Document.
Демонстрационные примеры:
▪Demos\*\Editors\Notes