Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];

Вниз

Два вопроса по разработке компонентов.   Найти похожие ветки 

 
-=Mike=-   (2005-12-06 03:22) [0]

Пишу свой компонент. Возникло два вопроса:

1) Как отследить добавление нового контрола в список дочерних контролов?
property Children[ Idx: Integer ]: PControl
Т.е. мне нужно выполнить собственный код, когда у моего контрола появляется дочерний контрол.

2) Как обработать сообщение WM_NOTIFY, которое посылается родителю? Мой компонент, после установки определенных его свойств, посылает уведомление родителю (сообщение WM_NOTIFY), в обработчике которого необходимо установить параметры этого компонента. Как обработать это сообщение «изнутри» компонента???


 
ECM ©   (2005-12-06 12:24) [1]


> ) Как отследить добавление нового контрола в список дочерних
> контролов?

При помощи собственной функции... это же Ваш компонент - что мешает?


> 2) Как обработать сообщение WM_NOTIFY, которое посылается
> родителю?


Обратите внимание на "стандартный" для KOL механизм подключения обработчиков - см. в KOL.PAS функции AttachProc(Ex) и WndProcXXX

Как вариант можно переопределить OnMessage (это хуже - т.к. пользователь компонента может захотеть его использовать)


 
ECM ©   (2005-12-06 12:26) [2]


> > ) Как отследить добавление нового контрола в список дочерних
>
> > контролов?
>
> При помощи собственной функции... это же Ваш компонент -
>  что мешает?

З.Ы. Имелось ввиду добавлять дочерние контролы при помощи специально функции компонента


 
-=Mike=-   (2005-12-07 04:19) [3]


> При помощи собственной функции...


Это понятно.. Примерно так пока и извернулся, но в дизайн-мод когда кидаешь на мой компонент какой-нить контрол, то моя функция естессно не вызываетя....


> Обратите внимание на "стандартный" для KOL механизм подключения
> обработчиков


Да, я в курсе. Но когда я подцепляю к компоненту этот обработчик, то он получит сообщения, направленные только ему. А мне нужно обработать сообщение, направленное родителю...
Хотя............  если прицепить обработчик каким-нить образом к родителю....
Надо будет порыть в этом направлени...


 
ECM ©   (2005-12-07 10:56) [4]


> в дизайн-мод когда кидаешь на мой компонент какой-нить контрол,
>  то моя функция естессно не вызываетя....

А это действительно нужно (реальный вызов)? Я думаю достаточно будет сгенерировать вызов в исходном коде при помощи перекрытых методов SetupFirst(Last) в МСК... Хотя Вам конечно виднее...


> прицепить обработчик каким-нить образом к родителю

Вобщем это и имелось ввиду - как раз в функции которая добавляет потомка
и вызвать AttachProc... При этом её можно вызывать многократно - каждый раз при добавлении - обработчик будет назначен только один в этом можно убедится посмотрев на реализацию AttachProc



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

Форум: "KOL";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.017 c
4-1148436426
not ZX
2006-05-24 06:07
2006.10.01
msocommandbardock


3-1154341981
Бурбузень
2006-07-31 14:33
2006.10.01
Не работает печать Quick Report


3-1154110257
Игорь__
2006-07-28 22:10
2006.10.01
Paradox: проблема с фильтрацией.


2-1158209473
Steep
2006-09-14 08:51
2006.10.01
символы яндекса


2-1157791558
oleg_v
2006-09-09 12:45
2006.10.01
DBGridEh и селект





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский