![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
передача метода [D7, WinXP]
Igorishe © (2009-11-07 01:10:00)метод vcl компонента процедура......как же его в дополнительный поток передать?
Сергей М. (2009-11-07 22:10:00) [1]
> метод не может быть процедурой?
Метод не может быть регулярной процедурой, на то он и метод.
Поэтому процедура - это процедура, по умолчанию подразумевается именно как регулярная.
А метод м.б. процедурным и функциональным, но от этого он процедурой не становится.
Более того - дельфийский метод представлен в памяти структуройиз двух указателей, только одиниз которых являет собой указателем на поцедуру, которую можно назвать регулярной.
Сергей М. (2009-11-07 22:05:00) [2]Это что еще за клоун-аноним ?)
Igorishe (2009-11-07 22:01:00) [3]
>
> Метод - это метод, а процедура - это процедура.
> Так метод или процедура ?
а ещё есть конструктор и деструктор, есть free а есть freeAndnil......придури млять...а метод не может быть процедурой? Сереж не надо прикидоватся дурачочком))))
Сергей М. (2009-11-07 20:34:00) [4]
> Anatoly Podgoretsky © (07.11.09 20:20) [12]
А есть еще знаки препинания, кои автор напрочь игнорирует, да еще и возмущается, что его упрекают в этом)
Anatoly Podgoretsky (2009-11-07 20:20:00) [5]> Сергей М. (07.11.2009 19:54:11) [11]
А еще есть и метод и функция
Сергей М. (2009-11-07 19:54:00) [6]
> метод vcl компонента процедура
Метод - это метод, а процедура - это процедура.
Так метод или процедура ?
sniknik (2009-11-07 16:25:00) [7]> А как же тогда делают подобное?
делают не подобное, делают задачу...
Loginov Dmitry (2009-11-07 13:54:00) [8]> Покажите пожалуйста!?
> передаю так, но наверное чот не то
коль работает, значит все то.
а если нет, то не то.
Igorishe (2009-11-07 11:11:00) [9]
> Медвежонок Пятачок © (07.11.09 10:31) [7]
>
> По русски сказали, что никак.
А как же тогда делают подобное?
Медвежонок Пятачок (2009-11-07 10:31:00) [10]Как это сделать?
По русски сказали, что никак.
Igorishe (2009-11-07 09:53:00) [11]
> Реализуй потоковую процедуру, передавай в нее указатель
> на объект VCL и вызывай метод.
Покажите пожалуйста!?
передаю так, но наверное чот не то
OleThr := TOleCont.Create(true);
OleThr.FreeOnTerminate := True;
OleThr.Priority := tpLower;
OleThr.FullPathToFile := ExtractFilePath(Application.ExeName)+'template\template_dogovor.doc';
OleThr.Ole := Form4.OleContainer1; //здесь передаю
//OleThr.ParentForm := Form4;
OleThr.Resume; //}
Loginov Dmitry (2009-11-07 08:17:00) [12]> вот этот метод надо бы как то в поток доп. передать, потому
> что этот метод подгружает данные компоненту основного потока.
> Как это сделать?
Зачем метод передавать? Реализуй потоковую процедуру, передавай в нее указатель на объект VCL и вызывай метод.
Есть вероятность, что столкнешься с явлением потоконезащищенности VCL.
Igorishe (2009-11-07 07:14:00) [13]
> Германн © (07.11.09 04:36) [3]
хм...сначала выучи ЕГО...спец....
Германн (2009-11-07 04:36:00) [14]
> Igorishe (07.11.09 01:40) [2]
На "русский" переведи свой вопрос.
Igorishe (2009-11-07 01:40:00) [15]есть компонент визуальный компонент в который грузятся большие данные, его отображаю на форме. Данные грузятся как OLE объект из файла методом компонента vcl и вот этот метод надо бы как то в поток доп. передать, потому что этот метод подгружает данные компоненту основного потока. Как это сделать?
Медвежонок Пятачок (2009-11-07 01:21:00) [16]в смысле бегинсред к методом класса в качестве процедуры потока?
никак.