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

Вниз

OnMouseDown в массиве Timage   Найти похожие ветки 

 
Radgar ©   (2005-06-28 17:18) [0]

Здраствуйте.
Подскажите, пожалуйста, как узнать на какой из элементов массива Timage кликнули, если они имеют общую процедуру OnMouseDown.


 
Eraser ©   (2005-06-28 17:20) [1]

Radgar ©   (28.06.05 17:18)
как узнать на какой из элементов массива Timage кликнули


Что вы имеете ввиду под "узнать"? Имя компонента?


 
Radgar ©   (2005-06-28 17:21) [2]

2 Eraser

Да


 
Eraser ©   (2005-06-28 17:21) [3]

TImage(Sender).Name


 
Просто Джо ©   (2005-06-28 17:22) [4]

Sender.Name


 
Radgar ©   (2005-06-28 17:22) [5]

Пасибо.


 
Radgar ©   (2005-06-28 18:05) [6]

Извините, я попробовал - не получается.
Sender = ()
Поэтому TImage(sender).Name = ""
Помогите, пожалуйста...


 
Просто Джо ©   (2005-06-28 18:08) [7]


> Извините, я попробовал - не получается.

Что попробовал, как не получается?


 
Stakan ©   (2005-06-28 18:09) [8]

А как ты заполняешь массив?


 
Radgar ©   (2005-06-28 18:13) [9]

2 Просто Джо


> Что попробовал, как не получается?


Пробовал узнать через Timage(sender).Name

2 Stakan


> А как ты заполняешь массив?



Image[i]:=TImage.Create(self);
Image[i].Parent:=self;
...


В работе программы.


 
Stakan ©   (2005-06-28 18:17) [10]


> Radgar ©

Так ты свойство name не заполняешь, поэтому оно и пустое


 
Stakan ©   (2005-06-28 18:24) [11]

А вообще я бы порекомендовал
Use TComponentList to store and maintain a list of components.


 
Radgar ©   (2005-06-28 18:43) [12]


> Stakan ©


Image[1].Name:="Image[1]";


Пробовал, но возникает ошибка:

"Image[1]" is not valid component name.

Что делать? ;-(


 
Просто Джо ©   (2005-06-28 18:45) [13]


> Что делать? ;-(

Задать другое имя. Например так:
for I := 0 to MaxCount-1 do
 Image[I].Name:=Format ("Image%d",[I]);


 
Просто Джо ©   (2005-06-28 18:47) [14]

А, вообще, различать компоненты по имени некошерно. Даже по свойству Tag - и то лучше.

for I := 0 to MaxCount-1 do
Image[I].Tag:= I;


В обработчике OnMouseDown:

case TImage(Sender).Tag of
 0: //
 1: //
 // и так далее
end;


 
Просто Джо ©   (2005-06-28 18:50) [15]

Кроме того, возможно, использование массива в данном случае - не есть хорошо, ибо велосипед. Лучше воспользоваться советом [11] Stakan



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

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

Наверх




Память: 0.49 MB
Время: 0.048 c
3-1117799308
_alex_niv_
2005-06-03 15:48
2005.07.18
Подключение к ORACLE


1-1119850639
MTsv DN
2005-06-27 09:37
2005.07.18
Открыть два фала из Проводника или как послать WM_DROPFILES...


4-1116581634
vidiv
2005-05-20 13:33
2005.07.18
Параметры бумаги в принтере


14-1119416218
Ega23
2005-06-22 08:56
2005.07.18
С днём рождения! 22 июня


1-1120212706
AbrosimovA
2005-07-01 14:11
2005.07.18
Как быстро выводить ChildItems из TreeView в ListView