"Exécuter" un menu

Résolu
SiCK_Boy Messages postés 5 Date d'inscription lundi 30 avril 2007 Statut Membre Dernière intervention 2 mai 2007 - 30 avril 2007 à 01:08
michelatoutfox Messages postés 828 Date d'inscription mardi 5 octobre 2004 Statut Membre Dernière intervention 7 mai 2013 - 1 mai 2007 à 12:59
Dans un projet, j'ai un programme (fichier .prg) qui sert de fichier principal (c'est le premier truc qui s'exécute, c'est là que je fixe les paramètres de mon application), et un menu (fichier de type .mnx), genre menu principal de logiciel (Fichier, Edition, ?), avec divers sous-menu. Je veux faire afficher ce menu dans mon application quand j'ai fini de fixer mes paramètres. Quelle commande dois-je inscrire dans mon programme pour lancer le menu?

5 réponses

michelatoutfox Messages postés 828 Date d'inscription mardi 5 octobre 2004 Statut Membre Dernière intervention 7 mai 2013 1
30 avril 2007 à 13:26
Bonjour,

il te faut d'abord générer un fichier de menu executable (*.mpr)
pour ça, tu ouvres ton menu (mnx), et tu choisis l'option "Menu" => "Générer" dans le menu principal de VFP.

Ensuite, il suffit d'un do ton_nom_de_menu.mpr

Si ton menu doit s'exécuter dans un form de premier niveau (et non pas dans le _screen de VFP), c'est dans l'init de ce form que tu appelleras ce mpr, avec une syntaxe de la forme do xxx.mpr with this,.T.
3
michelatoutfox Messages postés 828 Date d'inscription mardi 5 octobre 2004 Statut Membre Dernière intervention 7 mai 2013 1
30 avril 2007 à 18:04
Que contient ton programme principal?

Je présume que tu as oublié de mettre l'instruction READ EVENTS

Comme son nom l'indique, cette instruction demande de lire les évenements. le prg est interrompu, et ce sont les évenements qui déclenchent la suite, selon ce que les méthodes associées contiennent. dans ton cas, si tu as juste un do menu xxx avant ce read events, c'est ton menu qui prendra la main.

Tu n'es pas du tout obligé d'avoir un form de 1er niveau pour ton application, tu peux parfaitement l'exécuter dans la fenetre de VFP en y mettant ton propre menu. Perso, je préfère avoir un form de 1er niveau (et tous mes autres forms s'exécutent dans ce form de 1er niveau) parceque j'aime bien différencier completement l'environnement de developpement et celui de production. Mais il n'y a rien d'obligatoire.
3
michelatoutfox Messages postés 828 Date d'inscription mardi 5 octobre 2004 Statut Membre Dernière intervention 7 mai 2013 1
1 mai 2007 à 12:59
Hélas non... les menus de VFP sont tristes!

regarde du coté de http://www.codeplex.com/VFPX/Release/ProjectReleases.aspx?ReleaseId=3291 et de http://www.dbi-tech.com/ctToolBar.asp , tu devrais trouver ce que tu cherches.
3
SiCK_Boy Messages postés 5 Date d'inscription lundi 30 avril 2007 Statut Membre Dernière intervention 2 mai 2007
30 avril 2007 à 17:40
Question complémentaire...

Comment faire en sorte que mon programme "attende" que l'utilisateur choisisse une option une fois que le menu est affiché?

La commande WAIT ne semble pas correspondre exactement à ce que je cherche, puisque dès qu'on clique n'importe où ou qu'on appuie sur une touche, le programme ferme.

Et si je ne mets rien, lorsque je lance l'application (en format .exe), elle s'affiche le temps de le dire et quitte (je présume parce qu'elle termine de passer au travers de mon programme de démarrage).

Est-ce que je dois obligatoirement définir un formulaire de base pour mon application et lancer le menu à partir de ce formulaire au lieu d'à partir d'un programme?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
SiCK_Boy Messages postés 5 Date d'inscription lundi 30 avril 2007 Statut Membre Dernière intervention 2 mai 2007
30 avril 2007 à 19:11
Merci pour les deux réponses jusqu'à maintenant... disons que mes connaissances remontent à loin. J'ai plus hâte de vraiment travailler dans les formulaires, je devrais avoir besoin un peu moins d'aide rendu là.

Une autre question relative aux menus, celle-là moins critique et de nature plus esthétique: y a-t-il moyen de changer la couleur du menu pour qu'il soit autre chose que le gris 192,192,192 ? J'ai créé des formulaires un peu plus pâle, et je voudrais que le menu soit de la même couleur.
0
Rejoignez-nous