Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.03;
Скачать: CL | DM;

Вниз

Динамическое создание объектов   Найти похожие ветки 

 
Димыч ©   (2006-11-14 13:09) [0]

На главной форме я динамически создаю несколько объектов (одного типа Timage, они имитируют красочные кнопки, при навидении на них мыши подсвечиваются и тд), все эти объекты храняться в массиве, им на события OnmouseMave OnmouseDown OnmaouseUp я привязываю функции которые являются частью главной формы (может не правильно выразился, вообщем функции TForm1. ...), вопрос такой у меня можно ли один из объектов поместить на другой форме (не главной) и будет ли у такого объекта правильно работать указанные события.
Спрашиваю потому, что сделал так и у меня такой объект не реагирует на мышь, может это конечно ошибка с моей стороны, если нет то объясните пожалуйста почему так происходит.


 
Сергей М. ©   (2006-11-14 13:10) [1]


> может это конечно ошибка с моей стороны


Конечно с твоей, и сомнений не может быть никаких


 
KilkennyCat ©   (2006-11-14 13:16) [2]

чужой объект - чужое событие.


 
Димыч ©   (2006-11-14 13:29) [3]


> чужой объект - чужое событие.

Что-то не понял, объект чужойй - потому что на другой форме (не главной), а что значити чужое событие


 
clickmaker ©   (2006-11-14 13:45) [4]


> вопрос такой у меня можно ли один из объектов поместить
> на другой форме (не главной) и будет ли у такого объекта
> правильно работать указанные события.
> Спрашиваю потому, что сделал так

а как сделал-то?


 
Димыч ©   (2006-11-14 13:52) [5]

neon_buttons [1].img:=timage.Create(form1);
Вот так добавляется объект на главной форме, происходит это по событию OnCreate  главной же формы

...
neon_buttons [1].img.parent:=form1;
neon_buttons [1].img.height :=20;
neon_buttons [1].img.width  :=46;
neon_buttons [1].img.top    :=0;
neon_buttons [1].img.left   :=form1.ClientRect.Right-56;
neon_buttons [1].img.Anchors :=[akRight,aktop];
neon_buttons [1].img.picture:=neon_buttons [1].normal;
neon_buttons [1].img.tag    :=1;
neon_buttons [1].img.onmousemove := neon_move;
neon_buttons [1].img.onmousedown := neon_down;
neon_buttons [1].img.onmouseup   := neon_up;
neon_buttons [1].img.onclick     := neon_click;
neon_buttons [1].img.enabled:=true;
neon_buttons [1].img.visible:=true;


Вот так на другой форме

...
neon_buttons [8].img:=timage.Create(self);
neon_buttons [8].img.parent:=form5;
neon_buttons [8].img.height :=20;
neon_buttons [8].img.width  :=46;
neon_buttons [8].img.top    :=0;
neon_buttons [8].img.left   :=form5.ClientRect.Right-56;
neon_buttons [8].img.Anchors :=[akRight,aktop];
neon_buttons [8].img.picture:=neon_buttons [8].normal;
neon_buttons [8].img.tag    :=8;
neon_buttons [8].img.onmousemove := form1.Neon_move;
neon_buttons [8].img.onmousedown := form1.neon_down;
neon_buttons [8].img.onmouseup   := form1.neon_up;
neon_buttons [8].img.onclick     := form1.neon_click;
neon_buttons [8].img.enabled:=true;
neon_buttons [8].img.visible:=true;


Вообщем только что поэксперементировал оказалось что действительно все работает, проблема в том что я не правильно обрабатываю событие WM_NCHITTEST, что именно я делаю не правильно непоюму, уже создал торой вопрос  по этому поводу


 
Димыч ©   (2006-11-14 13:53) [6]

На другой форме (Form5) объект так же добавляется по событию OnCreate но только формы Form5


 
Димыч ©   (2006-11-14 13:59) [7]

Если отключаю свою обработку сообщения  WM_NCHITTEST, то все работает, если влючаю Timage перестает реагировать на мышь.


 
Димыч ©   (2006-11-14 14:10) [8]

Искренне извеняюсь за беспокойство, ошибка была в том что в обработке сообщения WM_NCHITTEST формы Form5 не поставил inherited.


 
StriderMan ©   (2006-11-14 16:02) [9]


> neon_buttons [8].

и это для каждого контрола???

а в цикле никак? код какой-то чудовищный получается.

хотя бы используй оператор with


 
MsGuns ©   (2006-11-14 20:39) [10]

>Димыч ©   (14.11.06 13:52) [5]

Осподи, ужасть то какая Э8(Е)
Надо же было на ночь такое увидеть !



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

Текущий архив: 2006.12.03;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.037 c
2-1163334112
Max.66RUS
2006-11-12 15:21
2006.12.03
Простейшие вопросы по текстовым файлам и строкам...


15-1163136696
DelphiN!
2006-11-10 08:31
2006.12.03
Сегодня начальство попросило написать свою OC


15-1163147795
zdm
2006-11-10 11:36
2006.12.03
Защита


1-1161192067
i-am-vladko
2006-10-18 21:21
2006.12.03
TWebBrowser dynamic create


15-1163145469
Konst5719
2006-11-10 10:57
2006.12.03
Можно ли встроить в форму ехе-файл?