Bonjour,

Pour un programme, je crée dynamiquement des groupes de composants (un panel qui est le parent d'une image qui le recouvre et d'un label ) que j'appel "tuile" en cliquant sur un autre tuile créée à la main (en gros c'est un bouton stylisé) .
Pour information, je permet la création de ces tuiles au sein d'un scrollbox de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
{ CREER LA NOUVELLE TUILE }
  NewTile := TPanel.Create(Self);   // La fenêtre est propriétaire du nouveau panel
  NewTile.Parent := Scrbox;         // mais c'est dans la scrollbox qu'il doit s'afficher
  with NewTile do
    begin
    Name := 'Tile'+ inttostr(incname);
    Caption := 'Nouvelle tuile: ' + NewTile.Name;
    Left := Tile0.Left - (Tile0.Width + 5) + (scaleup );
    Top := Tile0.Top + (scaleup div 2);
    width := Tile0.Width - scaleup;
    Height := Tile0.Height - scaleup;
    SendToBack; // mettre en arrière plan
    end;
 
  { CREER L'IMAGE DANS LA NOUVELLE TUILE }
  NewImg := TImage.Create(Self);
  NewImg.Parent := NewTile;
  with NewImg do
    begin
    Name := 'ImgTile'+ inttostr(incname);
    Cursor :=CrHandPoint;
    Picture.LoadFromFile(ExtractFilePath(Application.ExeName) +'../../icons/frame.bmp');
    Center := true;
    Proportional := true;
    Transparent := true;
    Height := NewTile.Height ;
    Width := NewTile.Width;
    Hint := 'Insérer image (clic droit)';
    ShowHint := true;
    OnMouseDown := AddImgOnClick;
    OnMouseEnter := ExpandOnEnter;
    end;
 
  { CREER LE LABEL DANS LA NOUVELLE TUILE }
  NewLbl := TLabel.Create(Self);
  NewLbl.Parent := NewTile;
  with NewLbl do
    begin
    Name := 'NewLbl'+ inttostr(incname);
    Align := AlBottom;
    Color := ClYellow;
    Transparent := false;
    Height := 16;
    Hint := 'Insérer titre';
    ShowHint := true;
    OnClick := ModifLblOnClick;
    end;
 
 
  { INCREMENTER POUR PROCHAIN ENSEMBLE }
  incname := incname + 1;
J'arrive à générer des événements sur ces composants.
J'arrive aussi à récupérer des infos utiles tel que le nom du composant dynamique sur lequel je clic (l'image de la tuile), le nom de son parent et sa classe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
label1.Caption := (Sender as TComponent).Name + ' | ' +  (Sender as TComponent).GetParentComponent.Name + ' :'+(Sender as TComponent).GetParentComponent.ClassName;
Mon problème c'est que je n'arrive pas à trouver le moyen d'utiliser les propriétés de ces composants dynamiquement créés.
Concrètement, j'ai besoin de récupérer le caption du label lors du clic sur l'image et de modifier la hauteur du panel mais je me casse un peu les dents là dessus.

J'en appel à vos lumières, merci bien !