Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MakeObjectInstance и FreeObjectInstance [Delphi, Windows]


Vit@l ©   (2002-09-21 12:42:00) 

Мастера, объясните, что это за функции!!! А то перевожу один компонентик под KOL, а тут эта фигня. В хелпе ничего нет. Объясните что это за звери и как их к KOL"у приручить...
А компонентик прекрасный...


Vladimir Kladov   (2002-09-21 17:09:00) [1]

У Шахайло в objects.zip есть реализация этих зверей для KOL. И если он... говорит правду, то даже без бага, имеющего место в VCL, из-за которого происходит утечка 4К с каждым вызовом формы из DLL.


Vit@l   (2002-09-21 14:20:00) [2]

Кстати поискал в Королевстве - там в принципе много об этом:
Есть отличная функция -- MAKEOBJECTINSTANCE. Ей передаёшь метод КОНКРЕТНОГО
объекта. Она возвращает ук-ль, который можно передавать в качестве callback-функции.
Ограничение в параметрах: предназначена вся эта замутка для обработки сообщений и,
следовательно, винды должны требовать функцию вида

UINT Proc(HWND Window; UINT Msg; WPARAM wParam; LPARAM lParam); //сишный синтаксис

Метод должен иметь тип TWndMethod:

type TWndMethod = procedure(var Message: TMessage) of object;

В общем я так понял, что это функция, которая позволяет установить обработку сообщений для другого окна. Правильно? А теперь помогите, как тоже самое в KOL воплотить?


Vit@l   (2002-09-21 14:11:00) [3]

Это в Classes.(D6)
function MakeObjectInstance(Method: TWndMethod): Pointer;
procedure FreeObjectInstance(ObjectInstance: Pointer);


Gandalf   (2002-09-21 12:58:00) [4]

А где такие взял, uses не укажешь? Или компонентик сам.


Наверх

Титульная страница Поиск, карта сайта Написать письмо