|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как обрабатывать Event*ы у динамически создаваемых обьектов?
Приветствую.
Есть динамически создаваемые Label*ы Код:
procedure TForm1.Button1Click(Sender: TObject); var i:byte; s:string; lb:array of TLabel; begin setlength(lb,Memo2.Lines.Count); for i:=0 to Memo2.Lines.Count-1 do begin lb[i]:=TLabel.Create(Self); lb[i].Parent:=Form1; lb[i].Left:=8; lb[i].Top:=i*17; lb[i].Font.Size:=9; lb[i].Height:=12; lb[i].Width:=200; lb[i].WordWrap:=False; lb[i].Cursor:=crHandPoint; lb[i].Caption:=Pars('">',Memo2.Lines.Strings[i-1],'%%%'); end; end; Можно как то обработать Events тоже динамически ? Что то типа: Код:
procedure TForm1.lb[i]Click(Sender: TObject); begin ShellExecute(handle, 'open',pChar(Pars('%%%',Memo2.Lines.Strings[i-1],'">')), nil, nil, SW_SHOW); end; Ну и обработать события: lb[i].MouseDown, lb[i].MouseUp, lb[i].MouseLeave, lb[i].MouseEnter Что б можно было обрабатывать события мыши (если курсор над label5, подкрасить его в красный. Курсор ушёл вернуть цвет в синий.) Спасибо. Последний раз редактировалось TEKTON, 28.09.2018 в 05:25. |