Главная страница
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.063 c
2-1163623090
MikePetrichenko
2006-11-15 23:38
2006.12.03
Потоки в ActiveX (OCX)


6-1152875173
NaLom
2006-07-14 15:06
2006.12.03
Блок инета


15-1163398766
KSergey
2006-11-13 09:19
2006.12.03
Гигагерцы в цифровых схемах


2-1163857257
alexey_mas
2006-11-18 16:40
2006.12.03
ADO


2-1163617262
Troan_81
2006-11-15 22:01
2006.12.03
handle