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

Вниз

Как узнать, какой компонент вызвал событие?   Найти похожие ветки 

 
GIL ©   (2004-04-07 10:36) [0]

на форме есть куча лейблов, они используются как элементы управления, на все эти лейблы хотелось бы написать одну по одной процедуре на событие. Есть процедура на событие в лейбле, хочется, чтобы все лейблы ссылались на эту процедуру, и при этом для каждого она работала, как это сделать? Как узнать, какой компонент вызвал процедуру?


 
Agent13 ©   (2004-04-07 10:38) [1]

см. свойство Tag


 
Семен Сорокин ©   (2004-04-07 10:39) [2]

Sender + F1


 
Рамиль ©   (2004-04-07 10:39) [3]

(Sender as TLable).Name


 
pasha_golub ©   (2004-04-07 10:40) [4]

Agent13 ©   (07.04.04 10:38) [1]
В Одессу через Сахалин?


 
GIL ©   (2004-04-07 10:49) [5]

незнаю при чем здесь таг, объясни пжлста


 
NAlexey ©   (2004-04-07 10:56) [6]

Находишся постоянно в состоянии дежавю читая вопросы в этой ветке.


 
Рамиль ©   (2004-04-07 10:59) [7]


> незнаю при чем здесь таг, объясни пжлста

Можно в каждой метке прописать Tag и идентифицировать объект по нему


 
GIL ©   (2004-04-07 11:01) [8]

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


 
GIL ©   (2004-04-07 11:02) [9]

2 Рамиль  -поподробнее пжлста, ведь для обращения к тагу надо суметь обратиться к компоненту?


 
pasha_golub ©   (2004-04-07 11:07) [10]

GIL ©   (07.04.04 11:02) [9]
Совершенно  верно, а для этого исползуем Sender


 
Serge ©   (2004-04-07 11:29) [11]

> NAlexey ©   (07.04.04 10:56) [6]

Матрица - однако :о)

> GIL ©   (07.04.04 11:01) [8]
...(вроде как он служит для объединения в группы)
- не-а, он не служит, он может быть использован и для этого

[2],[3],[10] - оно самое что тебе нужно


 
Saturn_   (2004-04-07 11:37) [12]

можеш попробовать сделать так:
procedure TForm1.Add_Label(Name,Capt:String;x,y,n:integer;Paren:TWinControl);
Var New_Label:TLabel;
begin
   New_Label:=TLabel.Create(Form1);
   New_Label.Top:=y;
   New_Label.Left:=x;
   New_Label.Name:=Name;
   New_Label.Height:=16;
   New_Label.Caption:=Capt;
   New_Label.Parent:=Paren;
   New_Label.AutoSize:=False;
   New_Label.OnClick:=OnClickLabel;

end;
Насоздавай нужных TLabel"ов

procedure TForm1.OnClickLabel(Sender: TObject);
Var i: integer;
begin
...
i:=0;
            While TEdit(TForm1.Controls[i]).name <> Name do i:=i+1;
                   result:=TLabel(Panel5.Controls[i]);//Это поиск элемента по известному имени может сгодится.
...
end;

Сделай перебор например через if
Чтото типа :
If TControl(Sender).name = Name{это имя элемента} Then ....


 
GIL ©   (2004-04-07 12:02) [13]

спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.031 c
8-1073767073
arcoant
2004-01-10 23:37
2004.04.25
quick graphics


3-1080699663
n313
2004-03-31 06:21
2004.04.25
Гуру, подскажите можно ли убрать скроллинг в DBgrid ?


1-1081703697
Женя е
2004-04-11 21:14
2004.04.25
Форма из dll.


1-1081505343
Andrew2
2004-04-09 14:09
2004.04.25
Скроллинг в ListView


1-1081337143
Макс Шабанов
2004-04-07 15:25
2004.04.25
Как добавить большую таблицу в RichEdit ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский