Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.01;
Скачать: CL | DM;

Вниз

Проблема с RichEdit   Найти похожие ветки 

 
TAS ©   (2006-08-16 16:49) [0]

Проблема состоит в следующем:
Написал я прогу, которая пингует хосты и выводит сообщения о результатах в RichEdit. Пинг каждого хоста - отдельный поток.
При добавлении строки в RichEdit каждый поток использует процедуру:

procedure AddColoredLine(ARichEdit: TRichEdit; AText: string; AColor: TColor);
begin
 with ARichEdit do
 begin
   SelStart:=Length(Text);
   SelAttributes.Color:=AColor;
   Lines.Add(String(AText));
 end;
end;


При вызове этой процедуры вылетает ошибка:
Richedit line insertion error
и поток останавливается.

В чем моя ошибка?

Спасибо.


 
Zeqfreed ©   (2006-08-16 16:52) [1]

Попробую предположить, что RichEdit — не потокобезопасный компонент и все операции с ним нужно производить в контексте основного потока (См. TThread.Synchronize).


 
begin...end ©   (2006-08-16 16:54) [2]

> TAS ©   (16.08.06 16:49)
> В чем моя ошибка?

В обращении к RichEdit"у из неглавного потока?


 
Чапаев ©   (2006-08-16 17:11) [3]

> В обращении к RichEdit"у из неглавного потока?

...несинхронизированном. ;-)


 
TAS ©   (2006-08-17 11:49) [4]

Все, разобрался. Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2006.10.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.042 c
2-1157795695
Kalt
2006-09-09 13:54
2006.10.01
Путь к выделеному файлу или автоматическая загрузка текста.


2-1158034779
Steep
2006-09-12 08:19
2006.10.01
Копирование файлов по списку


15-1158039042
Dmitry_177
2006-09-12 09:30
2006.10.01
Разрешить доступ другим компъютерам сети


15-1158086887
1519
2006-09-12 22:48
2006.10.01
Меню пуск


15-1157989615
Cyrax
2006-09-11 19:46
2006.10.01
Тонкости языка C++