Главная страница
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.034 c
1-1156172149
Fay
2006-08-21 18:55
2006.10.01
THintWindow.CalcHintRect


15-1157884524
Проггер из библиотеки
2006-09-10 14:35
2006.10.01
Формат mp3 (не ID3 тегов!!!)


1-1155908985
VEZ
2006-08-18 17:49
2006.10.01
Отмена ввода в TTreeView.


4-1148548267
Elen
2006-05-25 13:11
2006.10.01
Знает ли кто нибудь ветку AppInit_DLLs в реестре?


2-1157374144
parovoZZ
2006-09-04 16:49
2006.10.01
Когда много панелей