![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создание своих форм [D4, Win95/98]
Cobalt © (2002-01-05 11:47:00)Создал новую форму со своими свойствами, событиями(чтоб принимала брошенные на неё файлы).
Можно ли (и как) сделать так, что бы работать с нею как с обычной формой, т.е. чтоб в редакторе свойств были дополнительные поля и события(чтоб я работал не с потомкомTForm, а с потомкомTMyForm)?
Пробовал через Репозитарий - но это совсем не то.
KSergey (2002-01-06 10:36:00) [1]Возможно, если компонент пронаследован от TWinControl, т.е. является окном Windows и имеет свой HWND. Вот только сообщение тогда необходимо либо передавать собственно этому компоненту, либо форма (если уж передается все-таки ей) должна ее передать компоненту (ну из каких-нибудь сообажений).
Либо сделать иначе: пусть таки сообщение ловит форма, а для компонента просто вызывает какой-нибудь метод. Тогда уже можно любой компонент взять. Только не спрашивайте как форма догадается у какого компонента вызвать метод - это уж вам предстоит придумать.
Cobalt (2002-01-05 13:30:00) [2]Тогда такой вопрос:
Может ли к-л. компонент реагировать на сообщения для формы?
Т.е. для оконной функции формы приходит мессадж(типаWM_DROPFILES).
Надо что бы его обработал не форма(которая забъёт на него), а компонент.
Такое вообще возможно?
KSergey (2002-01-05 13:18:00) [3]Такое подозрение, что нельзя. Даже те стандартные формы, что есть в репозитарии от борланда не имеют доп. св-ств, а просто имеют некий заранее прописанный код.
Выход: либо мириться с этим, назначая обработчики на новые св-ства в run-time, либо менять взгляд на проблему (например, состряпать некий невизуальный компонент (вместо изменения св-ств формы), который будучи положенным на форму будет к ней цепляться, и вот у него уже прописать все необходимые свойства. (Что-то вроде ApplicationEvent.))