Нумерованный список в RichEdit
От: GeserX  
Дата: 20.09.06 16:04
Оценка:
Я создаю нумерованный список в RichEdit следующим образом:


procedure TForm1.Button1Click(Sender: TObject);
var
 fmt: TParaFormat2;
begin
  FillChar( fmt, SizeOf( fmt ), 0 );
  fmt.cbSize := SizeOf( fmt );
  fmt.dwMask := PFM_NUMBERING or PFM_NUMBERINGSTART or
                PFM_NUMBERINGSTYLE or PFM_NUMBERINGTAB;
  fmt.wNumbering := 2;
  /// wNumbering:
  // 0 - нет нумерации
  // 1 - маркированный список    (•, •, •, ...).
  // 2 - арабские цифры          (1, 2, 3, ...).
  // 3 - маленькие буквы         (a, b, c, ...).
  // 4 - большие буквы           (A, B, C, ...).
  // 5 - маленькие римские цифры (i, ii, iii, ...).
  // 6 - большие римские цифры   (I, II, III, ...).
  // 7 - последовательность символов Unicode/
  fmt.wNumberingStart := 1;
  /// wNumberingStart:
  //  Число, с которого начинается нумерация./
  fmt.wNumberingStyle := $200;
  /// wNumberingStyle:
  // Стиль нумерации
  // 0     :  1)
  // $100  : (1)
  // $200  :  1.
  // $300  :  1
  // $400  : убрать список
  // $8000 : продолжает нумеровать список не изменяя стиля/
  fmt.wNumberingTab := 1440 div 4;
  /// wNumberingTab:
  // расстояние между номером и текстом параграфа/
  RichEdit1.Perform( EM_SETPARAFORMAT, 0, lParam( @fmt ) );
end;


Но есть такой вопрос: MS Word позволяет в некоторой части списка разорвать его временно (дважды нажать Enter), а затем продолжить с полседнего элемента. Вопрос: как это реализовать программно?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.