Вниз
Скачать: CL | DM;

О разработке нового компонента   Найти похожие ветки 

← →
Хозявин М   (2003-09-01 07:20) [0]

Здравствуйте,
Тут понадобилось сварганить составной компонент. Собрал все выглядит на ура. Но есть несколько вопросов:
1. Мне необходимо чтобы в Инспекторе (свойство VArRab) появился ComboBox с двумя значениями (1 вариант и 2 вариант работы компонента), а затем смотря на то что выбрано осуществлять те или иные действия
2. Как обработать, что мышь находится окурат над компонентом (действие сменить курсор)
3. Как обработать клик на компоненте во время работы программы (не путать с OnClick, то действие должно выполнятся до OnClick)
4. Как компонентом перехвать сообщения направленные форме (перетаскивание, сис меню, размер и тд)
Заранее танкс


← →
KSergey ©   (2003-09-01 08:02) [1]

3.Перекрыть procedure Click и не забыть а) в перекрытом вызвать inherited (иначе onClick не сработает); б) в DesignTime это тоже будет срабатывать, ты что если это не надо - определять режим (ComponentState)

4.Наверное при срздании компонента и в случае, когда ему назначили Parent найти форму и переопределить соотв. обработчики формы (или все WdnProc, например). Ну и не забыть передавать приходящие действия по цепочки в предыдущий обработчик, конечно. Вот только в общем случае не факт, что в приложении будет форма (это визуальный компонент?), т.е. надо аккурантенько продумать как не удариться. А может этого все же и не надо, а?


← →
Юрий Зотов ©   (2003-09-01 08:04) [2]

1. Написать редактор свойства с перекрытыми GetAttributes и GetValues (прочее - по необходимости). См. TPropertyEditor и RegisterPropertyEditor.

2. Обработать сообщение WM_SETCURSOR.

3. Перекрыть метод Click.

4. MakeObjectInstance (примеры есть в коде VCL).


← →
KSergey ©   (2003-09-01 08:04) [3]

Очепятки как всегда:

...будет срабатывать, так что если это не надо...

4....соотв. обработчики формы (или вс ю WdnProc...


← →
Abelisto ©   (2003-09-01 21:32) [4]

1. Если мне память не изменяет - достаточно, что бы свойство было перечислимого типа...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.015 c
3-48433
dot
2003-08-25 10:15
2003.09.15
Как сделать фильтр по нескольким полям?


1-48529
Anton_
2003-09-02 13:33
2003.09.15
Изменение параметра реестра


3-48402
Relaxxx
2003-08-26 11:59
2003.09.15
Сложный вопрос, вообще возможно такое здеслать???


3-48394
Erik
2003-08-26 12:25
2003.09.15
Как скопировать поле их одного DataSet в другой?


1-48534
McSimm2
2003-09-02 09:43
2003.09.15
Объявление CONST




   Наверх