Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Вниз

как определить на какой объект был совершен клик мыши   Найти похожие ветки 

 
Александр123123   (2006-04-22 06:13) [0]

Здраствуйте подскажите пожалуйста как определить на какой объект был совершен клик мыши. У меня на несколько объектов стоит один обработчик, в котором необходимо считать свойства объекта
procedure TForm1.FormClick(Sender: TObject);
в процедуре Click как я понимаю сам объект не передается?


 
TUser ©   (2006-04-22 08:58) [1]

> в процедуре Click как я понимаю сам объект не передается?

Посмотри на параметр Sender: TObject. Это и есть сам объект.


 
Quattro ©   (2006-04-22 14:08) [2]

то есть нужно  делать проверку??...например если на форме есть ТБуттон и ТЛабел, то
if Sender is TButton then
  begin
    ShowMessage("Кнопка");
  end;
if Sender is TLabel then
 begin
   ShowMessage("Лэйбл");
 end;

так?


 
Anatoly Podgoretsky ©   (2006-04-22 14:35) [3]

ActiveControl


 
Мефисто   (2006-04-22 14:42) [4]

Anatoly Podgoretsky ©   (22.04.06 14:35) [3]

Утверждение ложно :)


 
Leonid Troyanovsky ©   (2006-04-22 14:47) [5]


> Мефисто   (22.04.06 14:42) [4]

> Утверждение ложно :)


Доказывай.

--
Regards, LVT.


 
Мефисто   (2006-04-22 15:12) [6]

Leonid Troyanovsky ©   (22.04.06 14:47) [5]
Как я подозреваю

Anatoly Podgoretsky ©   (22.04.06 14:35) [3]
TForm.ActiveControl ?

Вопрос автора:
>> как определить на какой объект был совершен клик мыши

Но ActiveControl подходит только для контролов производных от TWinControl и то, как вроде для тех TWinControl которые умеют получать фокус.

Ну, а если применительно например к TButton, тогда на все 100% с АП согласен ;)


 
Anatoly Podgoretsky ©   (2006-04-22 16:43) [7]

Ну а для других "контролов" допольнительные действия, обработка то все равно в OnMouseUp


 
Anatoly Podgoretsky ©   (2006-04-22 16:45) [8]

ControlAtPos


 
Quattro ©   (2006-04-22 16:51) [9]

OnMouseUp чего?формы?


 
Мефисто   (2006-04-22 18:56) [10]

Quattro ©   (22.04.06 16:51) [9]

Неважно чье это будет событие. Закодить 1 раз обработчик события OnMouseUp у одного контрола, а остальным контролам можно просто на данный обработчик ссылаться.

Anatoly Podgoretsky ©   (22.04.06 16:45) [8]

Таки выкрутился :)  Да... Знание сила ;)


 
Quattro ©   (2006-04-22 23:59) [11]

а почему именно OnMouseUp?? разве вот так будет по лапански??
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(Sender.ClassName);
end;



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

Форум: "Основная";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.061 c
2-1147159115
_duk
2006-05-09 11:18
2006.05.28
Получить значения


4-1141606261
Nostradamus
2006-03-06 03:51
2006.05.28
HKLM под Windows Vista (Build 5308)


10-1119940455
Scorpio
2005-06-28 10:34
2006.05.28
Сохранение и закрытие Excel


2-1147257319
alkin
2006-05-10 14:35
2006.05.28
Как отсортировать TreeView по ВТОРОЙ колонке ?


15-1146643657
annonymous
2006-05-03 12:07
2006.05.28
Как эмигрировать?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский