TCustomRichView.AddTextNL, AddTextNLA, AddTextNLW

<< Нажмите, чтобы показать Содержание >>

TCustomRichView.AddTextNL, AddTextNLA, AddTextNLW

Добавляет один или несколько абзацев текста в конец документа.

procedure AddTextNL(const s: String;
  StyleNo, FirstParaNo, OtherParaNo: Integer;
  AsSingleParagraph: Boolean = False;
  const Tag: TRVTag = RVEMPTYTAG);
procedure AddTextNLA(const s: TRVAnsiString;
  StyleNo, FirstParaNo, OtherParaNo: Integer;
  AsSingleParagraph: Boolean = False; 
  const Tag: TRVTag = RVEMPTYTAG;
  CodePage: TRVCodePage = CP_ACP);
procedure AddTextNLW(const S: TRVUnicodeString;
  StyleNo, FirstParaNo, OtherParaNo: Integer;
  DefAsSingleParagraph: Boolean = False;
  const Tag: TRVTag = RVEMPTYTAG);

Параметры:

s – добавляемая текстовая строка. Она может содержать специальные символы: CR, LF, TAB, FF (#13, #10, #9, #12). Символы #9 могут вставляться как табуляции, если это установлено в свойстве SpacesInTab связанного компонента TRVStyle. Символы #12 добавляют разрывы страницы. Поддерживаются все возможные варианты задания переноса строк (CR, LF, CR+LF, LF+CR).

StyleNo номер элемента в коллекции TextStyles связанного компонента TRVStyle, или константа rvsDefStyle. Задаёт шрифт, цвет и некоторые другие свойства отображения текста.

Если ParaNo=-1, метод добавляет первую строку в конец последнего абзаца. Если ParaNo>=0, добавляемый элемент первой строки начинает абзац, имеющий атрибуты, заданные в Style.ParaStyles[ParaNo].

OtherParaNo задаёт атрибуты абзаца для последующих строк. Должен быть >=0.

DefAsSingleParagraph: Если False, AddTextNLW использует текущий режим добавления абзацев (см. SetAddParagraphMode). Если True, он обрабатывает #13 и #10 как переносы строк внутри абзаца, а не как разделители абзацев. Юникодный символ #$2029 (разделитель абзацев) всегда обрабатывается как начало абзаца. Юникодный символ #$2028 (разделитель строк) всегда обрабатывается как перенос строки.

AsSingleParagraph: Если False, AddTextNLA использует текущий режим добавления абзацев (см. SetAddParagraphMode). Если True, он обрабатывает #13 и #10 как переносы строк внутри абзаца, а не как разделители абзацев.

Tag тег добавляемых элементов.

AddTextNLW поддерживает символы порядка байтов (если такой есть, он должен быть первым в s).

Тип метода: viewerstyle быстрое изменение документа.

unicode Примечание про Юникод:

В компоненте строки хранятся в юникодном формате. AddTextNLA конвертирует ANSI-строку в юникодную. Кодировка для конвертации определяется по значению свойства Style.TextStyles[StyleNo].Charset. Если она равна DEFAULT_CHARSET, и для нетекстовых элементов, используется Style.DefCodePage.

AddTextNL работает:

как AddTextNLA в Delphi 2007 и старее

как AddTextNLW в Delphi 2009 и новее

со строками в кодировке UTF-8 в Lazarus

Если используются шаблоны стилей, компонент может автоматически изменять номера стилей текста для обеспечения согласованности шаблонов стилей текста и абзаца.

См. также методы:

AddNL и др.;

AddTab;

LoadText, LoadTextW;

LoadTextFromStream, LoadTextFromStreamW;

Format;

FormatTail;

SetAddParagraphMode.

См. также методы TRichViewEdit:

InsertText, -A, -W.

См. также свойства TRVStyle:

TextStyles;

SpacesInTab.

См. также:

Другие методы добавления элементов в документ;

Юникод в ТРВ-Редакторе.

Пример загрузки текстовых файлов в кодировке UTF-8.