Вниз
Скачать: CL | DM;

как определить имя компонента   Найти похожие ветки 

 
Alanu   (2007-05-03 13:46) [0]

На форме расположены компоненты типа Label
как програмно определить имя компонента над которым находится курсор мыши?
Буду очень благодарен за ответ!


 
clickmaker ©   (2007-05-03 13:49) [1]

ControlAtPos()


 
Игорь Шевченко ©   (2007-05-03 13:49) [2]

YourForm.ControlAtPos (Point(Mouse.X, Mouse.Y),....) ?


 
Alanu   (2007-05-03 13:58) [3]

А как это применить?

есть метки label1, label2 ..... label3
событие OnMouseMove
как определить над какой меткой курсор?


 
MBo ©   (2007-05-03 14:02) [4]

всем меткам один обработчик OnMouseMove сделать, и проверять в нем Sender


 
Alanu   (2007-05-03 14:12) [5]

С обработчиком понятно, а как Sender  проверить?


 
{RASkov} ©   (2007-05-03 14:15) [6]

Или так:
procedure TForm1.Timer1Timer(Sender: TObject);
var P: TPoint; C: TControl;
begin
 GetCursorPos(P);
 P:=ScreenToClient(P);
 C:=ControlAtPos(P, True, True);
 if not (C is TCustomLabel) then C:=nil; // Это только для меток, но так же можно и третий параметр в ControlAtPos поставить в False(или его
                                         // вообще не писать)
 if C<>nil then Caption:=C.Name else Caption:="No Control";
end;

> [5] Alanu   (03.05.07 14:12)

(Sender as TLabel).Name.... Предварительно проверить if Sender is TLabel then


 
Alanu   (2007-05-03 14:20) [7]

СПАСИБО ОГРОМНОЕ!!!
Все получилось!!!!!!!!!!!!!!!



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

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



Память: 0.46 MB
Время: 0.035 c
2-1178108463
Neket
2007-05-02 16:21
2007.05.20
Програмно установить ActiveSheet


15-1176883038
beginer_
2007-04-18 11:57
2007.05.20
PHP: не загружаются MP3-файлы на сервер


2-1178202566
Серый
2007-05-03 18:29
2007.05.20
EditKeyPress


15-1177150053
ProgRAMmer Dimonych
2007-04-21 14:07
2007.05.20
Подскажите, пожалуйста, решение проблемы...


2-1178099432
Neket
2007-05-02 13:50
2007.05.20
Проверка наличия дирректории.....




   Наверх