Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как обработать rtf?


gvb ©   (2002-11-14 19:05:00) 

Доброе время суток всем!
В программе возникла необходимость обрабатывать документы в формате rtf. Для этого попробовал воспользоваться RichEdit. Но мне не нужно выводить его на экран, а только попользоваться его методами(например FindText). Я создаю RichEdit Run-time а он не хочет, говорит Invalid window descriptor...
Можно ли как-нибудь не класть RichEdit на форму, а просто держать его в памяти, и работать с его содержимым??

P.S. Пробовал также создать наследника от TCustomRichEdit - с тем же результатом...


gvb   (2002-11-15 11:18:00) [1]

Приложение не консольное. Я же могу написать текст своего объекта, просто в файле, просто ручками, используя VCL - зачем мне форма?
....
Да ладно, сделал я для него форму, как он просил, хотя она и не нужна, в конце-концов это просто разбазаривание памяти, да и фиг с ней.
Спасибо всем, кто откликнулся.


Smithson   (2002-11-15 10:17:00) [2]

Если формы нет вообще - речь идет о консольном приложении? Мне кажется, визуальные комипоненты (VCL) не будут работать в таком. Смотри исходники RichEdit - как они работают с RTF


gvb   (2002-11-15 09:08:00) [3]

Спасибо за отклик, но это как раз тот случай, когда RichEdit "Положен на форму" просто Вы сделали его невидимым. В моем же случае формы нет, есть объект, который занимается генерированием rtf-текстов (невизуальный компонент) ФОРМЫ НЕТ ВООБЩЕ!!!


Андрей Прокофьев   (2002-11-14 19:17:00) [4]

xRE :=TRichEdit.Create(Self);
xRE.Visible := false;
xRE.Parent := Self;

xRE.Lines.LoadFromFile("c:\autoexec.bat");
i := xRE.FindText("866", 0, MAXINT, [stMatchCase]);
xRE.Free;


Андрей Прокофьев   (2002-11-14 19:15:00) [5]

xRE :=TRichEdit.Create(Self);
xRE.Parent := Self;
xRE.Lines.LoadFromFile("c:\autoexec.bat");
i := xRE.FindText("866", 0, MAXINT, [stMatchCase]);
xRE.Free;


Наверх

Титульная страница Поиск, карта сайта Написать письмо