Remplir et mettre à jour un menu en temps réel (avec source en exemple)

Soyez le premier à donner votre avis sur cette source.

Vue 7 246 fois - Téléchargée 995 fois

Description

Générer ou modifier vos menus seulement quand l'utilisateur les consulte.

VB permet de remplir un sous-menu pendant l'execution, et les menus ont une structure 'presque' similaire avec les Collection sauf qu'ils nont pas les methodes pour ajouter ou supprimer des éléments...

On peut toutefois ajouter un élément en utilisant la commande 'Load', et utiliser la propriété '.visible' pour cacher des éléments que l'on voudrait supprimer.

Pour mettre à jour un menu en temps réel, il suffit de faire une fonction qui ajoute (et/ou cache) les éléments du menu, puis d'appeler cette fonction juste avant que l'utilisateur affiche le menu.

Et pour celà, il est utile de savoir que le survol d'un élément de menu, qui ouvre un sous-menu, provoque un événement 'Click' comme si on cliquait dessus... Par contre, comme le sous-menu est bloqué en écriture lors de cet évenement, il faudra appeler la fonction de mise à jour dans un niveau précédent (supérieur) du menu.

ESSAYEZ et étudiez l'exemple du source... Vous allez comprendre rapidement !!! ;o)

Source / Exemple :


'rem voir le ZIP

Conclusion :


NB:

Dans l'exemple, l'événement 'Click' de l'élément 'Systray' du menu provoque la mise à jour du sous-menu de 'Et sur Yahoo!'. Tandis que l'événement 'Click' de 'Et sur Yahoo!' met à jour le sous-menu de 'Rechercher'.
En bonus, exemple de lecture d'un .ini pour recuperer des URL qui s'ouvrent depuis le menu. L'URL est enregistrée dans la propriété .tag des éléments du sous-menu de 'Et sur Yahoo'.

Le source en exemple vient d'une appli destinée à 'Yahoo!Plus' ; projet commun du Labo :

http://www.vbfrance.com/projetcommun.aspx?ID=238

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
23
Date d'inscription
mercredi 3 novembre 2004
Statut
Membre
Dernière intervention
9 mars 2010

Très bonne source. Commenter, lisible et compréhensible. Bravo.
Messages postés
296
Date d'inscription
lundi 2 septembre 2002
Statut
Membre
Dernière intervention
28 janvier 2008

Mais ouiiii bien suuuuurrr ; chuis bébéte !!! :op
Messages postés
49
Date d'inscription
mardi 8 mai 2001
Statut
Membre
Dernière intervention
14 août 2004

Pour supprimer un menu ou un sous-menu, il suffit d'utiliser Unload :

i = 2
Unload Menu_Raccourci(i)
Messages postés
296
Date d'inscription
lundi 2 septembre 2002
Statut
Membre
Dernière intervention
28 janvier 2008

Oui tas tout compris...

Zest une propriété que lon peut utiliser pour ces besoins persos...dailleur, bocoup de controle possedent cette propriete ! ;o)
Messages postés
442
Date d'inscription
samedi 23 novembre 2002
Statut
Membre
Dernière intervention
19 octobre 2005

ok merci,en fait . tag c jure un sorte de variable pour objet afin que ca soit + simple.

@+
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.