Форум: "Основная";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];
ВнизTrichEdit Найти похожие ветки
← →
MegaVolt (2002-03-04 09:59) [2]есть ещё один метод заключается в преобразовании входного файла во время открытия в RTF формат с разноцветной подсветкой. Это реализуется используя конвертер который подключается к RichEdit. Пример:
Type
p =class(Tconversion)
function ConvertReadStream(Stream: TStream; Buffer: PChar; BufSize: Integer): Integer; override;
function ConvertWriteStream(Stream: TStream; Buffer: PChar; BufSize: Integer): Integer; override;
end;
function p.ConvertReadStream(Stream: TStream; buffer: PChar; BufSize: Integer): Integer;
Begin
//тута вставляем текст преобразователя на чтение
end;
function p.ConvertWriteStream(Stream: TStream; Buffer: PChar; BufSize: Integer): Integer;
begin
Result := Stream.Write(Buffer^, BufSize);
// преобразование на запись не требуется так что пишем всй что поступило :)
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
richedit1.registerConversionFormat("pas",p);
richedit1.DefaultConverter:=p;
//регистрируем конвертер
end;
При открытии файлов делалось преобразование в Дельфяшную раскраску. Скорость работы самого конвертера без отображения результата была порядка 1Мб/сек что вполне достаточно :)
Недостаток этого метода в том что ежели неоюходим не просмотр а редактирование то автоматической подсветки синтаксиса не происходит :( Как это обойти я не прибумал :(
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c