![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
передать значение переменной string между потоками [D6, 95/98, ME, 2000, XP]
SergP © (2005-12-04 23:17:00)Нужно передать значение переменной string из дополнительного потока в основной (нужно для работы со свойствами VCL-компонентов).
Использование глобальных переменных мне почему-то не нравится...
...
const
MYMESSAGE = WM_USER + 1;
type
TFrmMain = class(TForm)
...
private
procedure MyProcedure(var M : TMessage); message MYMESSAGE;
end;
...
procedure SendString(Str:string);
begin
// Здесь нужно передать значение Str
SendMessage(FrmMain.Handle,MYMESSAGE,....);
end;
procedure TFrmmain.MyProcedure(var M: TMessage);
begin
// А здесь нужно его получить
end;
Как это сделать?
Юрий Зотов (2005-12-05 01:33:00) [1]procedure SendString(Str:string);
begin
SendMessage(FrmMain.Handle, MYMESSAGE, Integer(Str), 0);
end;
procedure TFrmmain.MyProcedure(var M: TMessage);
begin
S := String(M.WParam)
end;