• Comment faire pour...

    Les réponses aux questions fréquement posées.

    FAQ

  • 1

Comment récupérer le nom d'une option de menu

L'énumération des élements permet bien des choses...

Dans le cas présent une procédure pour connaitre le nom d'une option de menu à partir de son identifiant (pratique pour en constituer une liste)

// Retourne le nom d'une option de menu à partir de son N° ID
PROCEDURE MenuNom(sParent,nNumOption, nNiveau=0)
// L'appel est du type :
//	MenuNom(NomFenêtre,NumOption)
//		NomFenêtre	= Nom de la fenêtre contenant le menu à parcourir
//		NumOption	= Numéro de l'option recherchée
sRetour est une chaîne		// nom de l'option ayant pour ID nNumOption
// énumération des options de menu
sOption est une chaîne=EnumèreSousElément(sParent,enumPremier+enumMenuPrincipal)

// il ne faut pas mettre le nom du menu
SI nNiveau=0 ET sOption<>"" ALORS
	sRetour=MenuNom(sParent+"."+sOption,nNumOption,nNiveau+1)
FIN
TANTQUE sOption<>"" ET sRetour=""
	// nom complet de l'option de menu
	sNomComplet est une chaîne=sParent+"."+sOption
	SI {sNomComplet}..Valeur=nNumOption ALORS
		sRetour=sNomComplet
	SINON
		// remplit les options du niveau supérieur
		sRetour=MenuNom(sParent+"."+sOption,nNumOption,nNiveau+1)
	FIN
	// option suivante
	sOption=EnumèreSousElément(sParent)
FIN
RENVOYER sRetour

Exemple d'utilisation :

// copie la liste des options du menu dans le presse papier (pour excel)
i est un entier
ss,sm,sf sont des chaines
sf = FenEnExécution()
Sablier
POUR i=1 A 200
	Jauge(i,200)
	ss+=i+TAB+MenuNom(sf,i)+RC
FIN
Jauge
VersPressePapier(ss)

Résultat :

1 Menu._Menu.Fichier
2 Menu._Menu.Fichier.Config
3 Menu._Menu.Fichier.Quitter
4 ...

Participez à nos FAQs

Proposez vos questions réponses...

Nos FAQs comportent les réponses aux questions fréquemment posées : 'Comment je fais...' et 'Le saviez-vous...'.
Vous pouvez participer en spécifiant la question et la réponse à publier dans le formulaire.

 Bientôt un nouveau formulaire

image image