TRichEdit - Как добавить пустую строку с изменением размера?

У меня есть массив строк, и я хочу добавить пустую строку меньшего размера между некоторыми из них. Итак, у меня есть код:

  const _n=#13#10;
  //...
  r1.Lines.Clear;
  r1.SelAttributes.Size:=18;
  r1.SelText:='TEST';
  r1.SelAttributes.Size:=6;
  r1.SelText:=_n+'............';
  r1.SelAttributes.Size:=18;
  r1.SelText:=_n+'test1';
  r1.SelAttributes.Size:=6;
  r1.SelText:=_n+' ';
  r1.SelAttributes.Size:=18;
  r1.SelText:=_n+'test2';

и изменение размера работает для первой строки (с точками), но строка между test1 и test2 имеет тот же размер, что и они (18), так или иначе =\

Какие-либо предложения?

2 ответа

Решение

Я нашел какой-то обходной путь: вместо пробела можно использовать символ табуляции.

Так что следующий код работает нормально:

  r1.SelAttributes.Size:=18;
  r1.SelText:=_n+'test1';
  r1.SelAttributes.Size:=6;
  r1.SelText:=_n+#9; // <- tab here
  r1.SelAttributes.Size:=18;
  r1.SelText:=_n+'test2';

Вместо вставки пустых строк вы можете изменить межстрочный интервал отдельных строк, отправив сообщения EM_SETPARAFORMAT в Richedit. Смотрите этот вопрос

Как уменьшить межстрочный интервал tRichEdit

для примера. Чтобы увеличить межстрочный интервал, измените значение "Para.dyLineSpacing". Используйте "500", чтобы получить представление об эффекте.

Другие вопросы по тегам