Вниз
Скачать: 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.034 c
1-1145370011
Darvin
2006-04-18 18:20
2006.05.28
Отловить изменение текстовых свойств компонента


10-1120033112
supervk
2005-06-29 12:18
2006.05.28
Позиция текста в TWordDocument или TWordApplication


1-1145536501
comtat
2006-04-20 16:35
2006.05.28
Строки ->Формулы


2-1147560405
EZHIK
2006-05-14 02:46
2006.05.28
Разные действия для одной кнопки.


1-1145538376
kyn66
2006-04-20 17:06
2006.05.28
Копирование в буфер




   Наверх