Meilleur auteur de réponses
Aide contextuel et identifiant

Question
-
Bonjour, Juste un petite Question: Je suis entrain de développer un Application avec Visual Studio 2010, MDI. J'ai suivi les recommandations du site de Microsoft pour Afficher l'aide contextuel, et celà fonctione avec les boutons de base: Par exemple clique sur le bouton "Afficher l'aide sur les boutons, les Menus, les Fichier" puis clique sur le bouton "Enregistrer", cela m'ouvre bien l'aide sur la bonne page, a savoir "Commande Enregistrer". Mais je n'arrive pas à la rajouter pour mes propres barre de boutons: J'ai bien vue qu'il y a un identifiant HID_File_Save et ID_File_Save. Mais où fait ont la relation entre les 2 identifiants : aide <----> bouton ou menu, pour que la méthode d'aide contextuel affiche la page que j'aurai préalablement créé ?
Attention: je parle bien de Visual Stodio 2010, pas un des versions précédentes.
Dans celui-ci, c'est la méthode "ON_COMMAND(ID_CONTEXT_HELP, &CMDIFrameWndEx::OnContextHelp)" de la carte des
messages système, de la fenêtre principale, qui ouvre l'aide.
Je me permets de le préciser, et d'insister sur ce point, car cela a changé avec les version précédentes.
Merci d'avance.
Bruno
- Type modifié Aurel Bera vendredi 18 avril 2014 06:06 disc
- Type modifié Paul BacelarModerator lundi 23 juin 2014 14:20
Réponses
-
Bonjour,
J'ai trouvé la réponse tout seul:
Les liens des Boutons (standards) donc entre les ID_... des Boutons et HID_... de l'aide HTML,
est intégré dans le fichier "HTMLDefines.h" si vous avez créé votre application avec le Sorcier, avec un aide évidement.
Dans un Programme Visual 2010 C++, MFC, MDI, Dans la rubrique du Projet: "Fichiers d'aide HTML"
on trouvealors le fichier <Mon Application>.hhp
Donc dans ce fichier , dans la Zone [MAP] il y a l'inclusion du fichier "HTMLDefines.h":[MAP]
#include HTMLDefines.h
Il suffit de créer son fichier (par exemple "HTML_Mes_Defines.h" de liens , et de le Rajouter dan la zone map du fichier <MonApplication>.hhp:
[MAP]
...
#include HTML_Mes_Defines.h
Voilà Voilà
Merci quand même.
Cordialement
Bruno
- Marqué comme réponse Paul BacelarModerator lundi 23 juin 2014 14:20
Toutes les réponses
-
Visual Studio n'est qu'un IDE. Il travaille avec des langages différents, par dizaines, des frameworks différents par centaines, et avec des librairies différentes par milliers.
Donc, votre question est on ne peut plus vague.
Je suppute que vous parlez des MFC, et plus précisément avec celles livrées avec une version pro de VC++ ?
Un VC++ peut travail avec plusieurs versions différentes des MFC, du moment qu'elles soient installées sur le poste de développement.
Normalement, ce genre de réglage se fait par l'intermédiaire du Wizard MFC qui s'occupe de toute la tuyauterie nécessaire au bon fonctionnement de l'aide en ligne.
Si le comportement par défaut ne vous convient pas, vous avez toute latitude pour le changer via le routing des messages de commande des MFC.
http://msdn.microsoft.com/en-us/library/shfzay75(v=vs.100).aspx#_core_standard_command_route
Paul Bacelar, Ex - MVP VC++
-
Bonjour,
Je précise plus:
Je développe une application en Visual 2010 C++, MID, avec le compilateur Microsoft.
Cette application a été crée avec la baguette magique "Application MDI Windows Form" de mémoire.
PAr defaut, j'ai coché l'aide. Mais j'ai rajouté mes propre barre de boutons, et menus.
Quand on crée son application C++, window MDI, il crée des barre de boutons, par défaut, et dans la barre standard, il y a un boutton "Afficher l'aide sur les boutons, les menus et les fichiers".
Quand on clique dessus, puis ensuite sur un bouton, par exemple "Ouvrir",
l'aide (crée avec le logiciel "HelpWorkShop" s'ouvre sur la page "Fichier Nouveau" de l'aide compilée:
Il y a un identifiant, pour le bouton "Ouvrir" qui s'appelle "ID_FILE_OPEN"
Dans l'aide, il s'appelle HID_FILE_OPEN.
Je pense qu'il faut faire la relation entre les deux quelquepart.
J'ai créée une page pour un de mes boutons, mais n'ayant pas trouvé comment faire la relation entre le ID du programme et le HID de laide j'ai le message:
"Le démarrage de l'aide a échoué."
Voilà voilà mon problème et ma question :
Comme cette relation se fait elle, afin d'afficher la bonne page dans l'aide ?
Merci
Bruno
-
Vous semblez complètement perdu.
Vous utilisez oui ou non les MFC ?
Si oui, vous avez donné la réponse, c'est dans "ON_COMMAND(ID_CONTEXT_HELP, &CMDIFrameWndEx::OnContextHelp)".
Regardez le code de CMDIFrameWndEx::OnContextHelp pour voir s'il présente des mécanismes de customisation.
Pour l'association, il faut voir comment votre outil de création d'aide peut intégrer le resource.h de votre projet.
Si vous n'utilisez pas les MFC, c'est que je n'ai rien compris à votre question.
Pouvez-vous fournir des copies d'écran de votre application ? et de VS avec le projet ?
Paul Bacelar, Ex - MVP VC++
-
Bonjour
bmoraut, un petit retour SVP?
Merci,
Bien cordialement,
Aurel BERA, MSFT
MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution. -
Bonjour,
J'ai trouvé la réponse tout seul:
Les liens des Boutons (standards) donc entre les ID_... des Boutons et HID_... de l'aide HTML,
est intégré dans le fichier "HTMLDefines.h" si vous avez créé votre application avec le Sorcier, avec un aide évidement.
Dans un Programme Visual 2010 C++, MFC, MDI, Dans la rubrique du Projet: "Fichiers d'aide HTML"
on trouvealors le fichier <Mon Application>.hhp
Donc dans ce fichier , dans la Zone [MAP] il y a l'inclusion du fichier "HTMLDefines.h":[MAP]
#include HTMLDefines.h
Il suffit de créer son fichier (par exemple "HTML_Mes_Defines.h" de liens , et de le Rajouter dan la zone map du fichier <MonApplication>.hhp:
[MAP]
...
#include HTML_Mes_Defines.h
Voilà Voilà
Merci quand même.
Cordialement
Bruno
- Marqué comme réponse Paul BacelarModerator lundi 23 juin 2014 14:20
-