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

Вниз

совсем немного вроде осталось, и - на тебе...   Найти похожие ветки 

 
Граф ©   (2002-10-21 22:15) [0]

Thread поместил в отдельном юните (исключительно для наглядности и красоты), но теперь в процедуре вызываемой методом Synchronize отказвыается понимать переменную MainForm, оставшуюся, понятно в другом юните. Если поставить ссылку на юнит с MainForm в uses юнита-потока, то возникает циклическая ссылка (юнит с MainForm ссылается на юнит-поток и правильно делает :) ).
Можно создать еще один юнит, конечно, но это как-то не очень красиво.
По идее задача банальная, должно быть, соответственно, банальное решение. Но его пока нет :).


 
Граф ©   (2002-10-21 22:20) [1]

Да, вот что еще интересно.
Юнит-поток я создавал через New->Thread Object В созданном юните была такая запись
{ Important: Methods and properties of objects in VCL or CLX can only be used
in a method called using Synchronize, for example,

Synchronize(UpdateCaption);

and UpdateCaption could look like,

procedure CopyFile.UpdateCaption;
begin
Form1.Caption := "Updated in a thread";
end; }

То есть, вроде так и должно работать, но у меня вот не хочет. Конечно это я где-то набардачил, но вот где?


 
TTCustomDelphiMaster ©   (2002-10-21 22:27) [2]

Добавляйте uses в implementation

implementation
uses unit1{MainForm};


 
Граф ©   (2002-10-21 22:33) [3]

вопрос снимется, все работает, позор на мою седую бороду


 
VaS ©   (2002-10-22 09:11) [4]

Иметь перекрестные ссылки не есть хорошо. Лучше в модуле с нитью сделать глобальную переменную - указатель на метод (...of object) без параметров, а в модуле с формой в initialization присваивать ей метод формы.


 
Smithson ©   (2002-10-22 09:38) [5]

Иметь перекрестные ссылки ЕСТЬ хорошо, поскольку перекрестными и ссылками они выглядядт только на уровне языка, а после трудов компилятора будет просто общая область видимости (односторонняя).



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
7-101539
Seldon
2002-08-24 21:25
2002.10.31
PC Speaker


3-101099
soni
2002-10-09 15:27
2002.10.31
Уважаемые! IBDataSet - как он работает?


1-101248
Дядя Джонсон
2002-10-17 23:00
2002.10.31
Как перейти в самый верх memo?


1-101272
shubin
2002-10-22 10:01
2002.10.31
День добрый!


1-101309
brestmarket
2002-10-19 16:54
2002.10.31
В WebBrowser перекрытие обработки в WebBrowser1BeforeNavigate2