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

Вниз

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

 
Александр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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.041 c
4-1138902028
nick4u
2006-02-02 20:40
2006.05.28
Как работать с com портом???


6-1138440364
BSimon
2006-01-28 12:26
2006.05.28
idHTTP и загрузка страниц по частям


2-1147203470
Mr tray
2006-05-09 23:37
2006.05.28
узнать хендл объекта с фокусом клавиатуры


4-1141569418
4ho
2006-03-05 17:36
2006.05.28
Передача параметров потоку.


2-1147156430
EvgeniyC
2006-05-09 10:33
2006.05.28
Здраствуйте! Вопрос: Можно ли сохранить в граф. файл?