Показать сообщение отдельно
  #9  
Старый 18.06.2011, 22:59
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Snake22
можно както сохранить форматирование? а то если нельзято это пипец((

Форматирование добавляется к строке или выделенному фрагменту. При использовании
Код:
  RichEdit1.Text := RichEdit1.Text + sr.Name + '  ';
затирается старое значение формата из-за особенностей реализации RichEdit-а в VCL. Приходится использовать POST-форматирование, когда вся строка сформирована. Если не подходит по-строчное добавление, то вариант Janom или вот похожий вариант (по сути, тоже самое).

Код:
procedure TForm1.Button2Click(Sender: TObject);
type
  TPos = TPoint;
var
  sr : TSearchRec;
  I  : Integer;
  fp : array of TPos;
begin
  RichEdit1.Lines.Clear;
  I := 0;
  if FindFirst(ExtractFilePath(ParamStr(0)) + '\*.*', faAnyFile, sr) = 0 then
    with RichEdit1.SelAttributes do
    begin
      repeat
        if sr.Attr and faDirectory <> 0 then
        begin
          inc(I);
          SetLength(fp, I);
          fp[I - 1].X := Length(RichEdit1.Text);
          fp[I - 1].Y := Length(sr.Name);
        end;
        RichEdit1.Text := RichEdit1.Text + sr.Name + ' ';
      until FindNext(sr) <> 0;
      FindClose(sr);

      for I := 0 to Length(fp) - 1 do
      begin
        RichEdit1.SelStart  := fp[i].X;
        RichEdit1.SelLength := fp[i].Y;
        Style := [fsBold];
        Color := clRed;
      end;

      RichEdit1.Lines.Add('');
      RichEdit1.Lines.Add('Сканирование завершено.');
    end;
end;
Ответить с цитированием