Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: -0.975 c
2-1147423268
Megabyte
2006-05-12 12:41
2006.05.28
создание простейшего сервиса


15-1146652886
Pazitron_Brain
2006-05-03 14:41
2006.05.28
Windows Installer - проблема:


1-1145093355
Arm79
2006-04-15 13:29
2006.05.28
использование указателей на методы


4-1141197430
Yaral
2006-03-01 10:17
2006.05.28
Виртуальный Com порт


1-1145273582
gear
2006-04-17 15:33
2006.05.28
Как стартовать программу минимизированной при автозагрузке?




   Наверх