Problème avec des TMenuItem
Bonjour à toutes et à tous,
Je veux créer des menus du type "les fichiers les plus récents" avec la particularité suivante :
Les menus que je crée sont des "sous menu" d'un "sous menu". L'architecure est la suivante :
Fichiers --> Edition -> ... > Employés
------------------------------|__> Editer
------------------------------|__> Afficher
-------------------------------------|__> Employe N°1
-------------------------------------|__> Employe N°2
-------------------------------------|__> Employe N°3
Pour ce faire, je crée une procédure :
Code:
1 2 3 4 5 6 7 8
| Afficher.Clear;
for i:= 0 to High(Employes) do
begin
MenuEmpl:= TMenuItem.Create(Afficher);
MenuEmpl.Caption:= Employe[i].Nom; // que j'ai symbolisé plus haut par Employe N°x
MenuEmpl.OnClick:= @ClickMenu;
Afficher.Add(MenuEmpl);
end; |
Les trois sous menu Employe N°x sont bien affichés.
puis la procédure ClickMenu :
Code:
1 2 3 4 5 6 7
| procedure TFntrPrinc.ClickMenu(Sender: Tobject);
var
S, T: String;
begin
S:= TMenuItem(Sender).Caption;
T:= Owner.Name;
end; |
Quand je clique sur un des 3 menus "Employe N°x", je suis bien dirigé vers la procédure ClickMenu, mais les chaîne S et T sont vides alors que, si je fais un click droit sur "Sender" de la procédure "ClickMenu", je vois bien, sous le rubrique "Caption" le nom de l'employé choisi ; je ne sais pas pour le "Owner".
Pourquoi, je n'arrive pas a retrouver le "Caption" ?
Merci de votre aide.
Pierre