Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

array of Timage [D6, WinXP]


Страницы:   1 2

webpauk ©   (2007-06-08 13:31:00) 

есть массив картинок.
надо:
1. отследить на какую кликнули - реализовано
2. отследить как кликнули (ShiftState) - выполнимо
3. Отледить если кликнули не на картинку (куда-угодно в пределах Parent-componenta) - неизвестно


webpauk   (2007-06-08 16:49:00) [1]


> b z   (08.06.07 16:21) [24]

гы...
неа
мне самому по приколу


b z   (2007-06-08 16:21:00) [2]


> от вас узнать-с

а программу не написать за вас? ;)


webpauk   (2007-06-08 16:14:00) [3]


> b z   (08.06.07 16:12) [22]

гы...
я хотел по простому
от вас узнать-с


b z   (2007-06-08 16:12:00) [4]


> OldParentWndPrc:=TWinControl(AOwner).WindowProc;

TImageEx.Create(nil);

> состояние shift и ctrl какими константами определяется?

смотрите в недрах vcl (units: Windows, Messages)


webpauk   (2007-06-08 15:53:00) [5]

есть
но! ловить click надо только в пределах parent component
собственно говоря, засунул array в class, а уже классу присобачил Parent.WindowProc

единств. вопрос остался:
состояние shift и ctrl какими константами определяется?
эмпирически Msg.wparam=5(9)
а как правильнее записать эти 5 и 9?


clickmaker   (2007-06-08 15:47:00) [6]

а что, кроме имиджей и формы ничего нет? то есть юзер обречен щелкнуть либо по имиджу, либо по форме без вариантов?


webpauk   (2007-06-08 15:42:00) [7]

дополнение: есть array of TimageEx
и соответс при каждом создании TimageEx - происходит
OldParentWndPrc:=TWinControl(AOwner).WindowProc;
TWinControl(AOwner).WindowProc:=NewParentWndPrc;

может в консерватории что-то поменять?


webpauk   (2007-06-08 15:37:00) [8]

извиняюсь за тупость, нада помощ:

TImageEx = class(TImage)
...
protected
  procedure  NewParentWndPrc(var  Msg: TMessage);
end;

var
  OldParentWndPrc: TWndMethod;

constructor TImageEx.Create(AOwner: TComponent);
begin
 inherited Create(AOwner);
 OldParentWndPrc:=TWinControl(AOwner).WindowProc;
 TWinControl(AOwner).WindowProc:=NewParentWndPrc;  
end;

procedure TImageEx.NewParentWndPrc(var  Msg: TMessage);
begin
 case msg.Msg of WM_LBUTTONDOWN: DoSomthing;
 end;
  OldParentWndPrc(Msg); - ???
end;


здесь происходит stackoverflow
как правильно?


b z   (2007-06-08 15:32:00) [9]


> извиняюсь

ну хорошо хоть так :)


webpauk   (2007-06-08 15:20:00) [10]

упс...
извиняюсь
WM_LBUTTONDOWN и надоть ловить


webpauk   (2007-06-08 15:18:00) [11]


> homm ©   (08.06.07 15:15) [14]

я согласен на Parent.WindowProc
какой месс ловить для click вне компонента


homm   (2007-06-08 15:15:00) [12]

> нужно отловить WM_LBUTTONDOWN ВНЕ компонента!!!

Тебе уже как минимум 2 способа сказали.

См. [9], [7];


webpauk   (2007-06-08 15:12:00) [13]


> b z   (08.06.07 14:36) [11]

нужно отловить WM_LBUTTONDOWN ВНЕ компонента!!!


clickmaker   (2007-06-08 14:46:00) [14]


> хочется реализовать наследника Timage, который отслеживает
> Click вне пределов компонента

а что он при этом должен делать?


b z   (2007-06-08 14:36:00) [15]


> webpauk   (08.06.07 14:32) [10]

ну это по обстоятельствам, я ж не знаю что у вас там происходит
к примеру WM_LBUTTONDOWN


webpauk   (2007-06-08 14:32:00) [16]


> b z   (08.06.07 14:19) [9]

а какой message отлавливать?


b z   (2007-06-08 14:19:00) [17]


> webpauk   (08.06.07 13:50) [6]

можно наверное через Parent.WindowProc


Правильный Вася   (2007-06-08 14:05:00) [18]


> webpauk   (08.06.07 13:50) [6]

а запуск северокорейских ракет он не должен отслеживать?


Сергей М.   (2007-06-08 13:58:00) [19]


> webpauk   (08.06.07 13:50) [6]


imho, блажь.

Уж если не нравится единый обработчик OnClick для всех контролов, то чем тогда не угодила обработка Application.OnMessage ? Через это событие проходит подавляющее большинство сообщений, в т.ч. мышиных ...


webpauk   (2007-06-08 13:50:00) [20]

блин, хочется реализовать наследника Timage, который отслеживает Click вне пределов компонента


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо