Форум: "Начинающим";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизОпределить источник события Найти похожие ветки
← →
arinyshka (2008-04-14 11:15) [0]мне нужно обработать однотипное событие Click для 15 image на форме. Собственно, нужно узнать, кто из 15 был источником события и взять его tag. Не хочется перебирать как нибудь так:
for i:=1 to 15 do
begin
s:="Image" +inttostr(i);
FImage := SetPayAddFrm.FindComponent(s)as TImage;
if Assigned(FImage) then ...
Искать источник циклом мне кажется неверным... Есть другой способ?
← →
Игорь Шевченко © (2008-04-14 11:19) [1]
> Собственно, нужно узнать, кто из 15 был источником события
Sender очевидно
← →
Palladin © (2008-04-14 11:19) [2]а Sender для кого сделан?
← →
arinyshka (2008-04-14 11:21) [3]а как проверить сендер? все равно циклом перебирать все имаги и смотреть, кто из них сендер?
← →
Palladin © (2008-04-14 11:23) [4]Sender это объект того компонента, по которому щелкнули мышкой, простым приведением типов ты получишь этот имаг... иди читай матчасть
← →
arinyshka (2008-04-14 11:30) [5]FImage := (sender as TImage);
if Assigned(FImage) then
ImageTag:= (FImage as TImage).Tag;
Работает :) Спасибо :) Не сердитесь на глупую ;)
← →
<> (2008-04-14 11:32) [6]Если картинки создавать в ручную, то вот так:
type
TForm1 = class(TForm)
Image1: TImage;
Image2: TImage;
procedure FormCreate(Sender: TObject);
procedure ImageClick(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
...
procedure TForm1.ImageClick(Sender: TObject);
begin
Caption:=IntToStr(( Sender as TImage).tag);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Image1.OnClick:=ImageClick;
Image2.OnClick:=ImageClick;
Image1.Tag:=1;
Image2.Tag:=2;
end;
← →
Anatoly Podgoretsky © (2008-04-14 11:51) [7]> arinyshka (14.04.2008 11:30:05) [5]
А не видать обработки, может и не надо никаких фокусов?
Может просто (sender as TImage).действие
← →
arinyshka (2008-04-14 12:27) [8]
> А не видать обработки, может и не надо никаких фокусов?
> Может просто (sender as TImage).действие
В смысле? Я у обретенного имага проверяю тег и хинт :). Если они меня устраивают (задаются программно в другом куске) - то одно действие, если нет - другое...
В конечном итоге по щелчку на имаге, при условии, что он не занят (хинт), я привязываю его к записи в таблице БД (тег - id картинки). Картинки тоже лежат в БД, в другой таблице...
← →
Kolan © (2008-04-14 12:29) [9]Удалено модератором
Примечание: Флудить завязываем
← →
Kolan © (2008-04-14 12:30) [10]> Картинки тоже лежат в БД, в другой таблице…
DBImage?
← →
arinyshka (2008-04-14 12:48) [11]Удалено модератором
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c