![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пишу компонент. Как послать месадж форме на которой он будет лежа
qp © (2006-10-27 13:20:00)День добрый!
Пишу компонент. Подскажите как я могу послать месадж форме на которой он будет лежать. Как получить хендл формы?
qp (2006-10-27 15:06:00) [1]спасибо
unknown (2006-10-27 14:52:00) [2]
> qp (27.10.06 14:38) [12]
> как быть?
Можно так :
procedure TForm1.Button1Click(Sender: TObject);
var
Comp:TComponent;
begin
Comp:=MyComponent.Owner;
while (Comp<>nil) and not (Comp is TForm) do
Comp:=Comp.Owner;
if Comp is TForm then
TForm(Comp).Caption:='afgbasg';
end;
Mirage (2006-10-27 14:51:00) [3]>[12] qp 27-Oct-2006, 14:38
у TComponent нет parent'а. у него только Owner. потому что TComponent -- не визуальный. "компрене ву?" (ц)
qp (2006-10-27 14:38:00) [4]TComponent же выше в иерархии TControl
приведение неравельное
как быть?
qp (2006-10-27 14:24:00) [5]frm := GetParentForm(TControl(Self)); - ворачивает нил
qp (2006-10-27 14:14:00) [6]мне из компонента необходимо временно запретить перерисовку формы
вот для этого и нужен дескриптор формы
Сергей М. (2006-10-27 14:13:00) [7]
> клас компонента наследник от TComponent
>
Компонент и не может быть наследником (прямым или непрямым) иначе чем класса TComponent
qp (2006-10-27 13:54:00) [8]ну да не обязан.
в даном случае мне так нужно
клас компонента наследник от TComponent
qp (2006-10-27 13:52:00) [9]т.е получается еще нужно привести тип? к TControl
GetParentForm(TControl(Self))
верно?
Сергей М. (2006-10-27 13:43:00) [10]
> форме на которой он будет лежать.
Компонент не обязан где-то там "лежать".
qp (2006-10-27 13:42:00) [11]ааа
ясн
ща попробую
пасиба
Джо (2006-10-27 13:41:00) [12]> MyControl - это что будет
Это будет Self.
unknown (2006-10-27 13:39:00) [13]
> qp (27.10.06 13:37) [2]
>
> Не допонял
> MyControl - это что будет
Это твой компонент.
qp (2006-10-27 13:37:00) [14]Не допонял
MyControl - это что будет
в коде своей компоненты я не знаю какие котролы будут еще лежать на форме...
unknown (2006-10-27 13:26:00) [15]GetParentForm(MyControl)