Je créé des composants en execution et doit leur adjoindre un popupmenu a chacun donnant la possibilité de supprimer le composant en question. La création de composant ne pose pas de problème; c'est la gestion du popup menu qui me pose problème : Comment savoir que je dois detruire tel composant et pas un autre ?

Le 2eme problème : comment connaitre la position de la souris (coordonnée X et Y) sur ma fiche et non pas sur le bureau.

LE CODE :
=======

Creation du composant et du menu associé

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
 
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
xe := xe+1;
  MonEdit := Tedit.Create(Self);
  MonEdit.Parent := Form2;
  MonEdit.Left := 0;
  MonEdit.Top := 0;
  MonEdit.DragKind := dkDock;
  MonEdit.DragMode := dmAutomatic;
  MonEdit.OnClick := Supprfonction2;
  MonEdit.Name := 'monedit'+(InttoStr(xe));
  popmenu := TPopupmenu.create(self);
    MyItem[i] := TMenuItem.Create(Self);
    MyItem[i].Caption := 'Configurer '+'monedit'+(InttoStr(xe));
    MyItem[i].OnClick := Supprfonction;
    popmenu.Items.Add(MyItem[i]);
  popmenu.name := 'monedit'+(InttoStr(xe))+'pop';
  Monedit.popupmenu := popmenu;
end;

Le menu :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
procedure TForm1.SupprFonction2(Sender: TObject);
begin
ShowMessage('Appui sur le bouton :'+(IntToStr(TButton(Sender).tag)));
Free;
end;