Membres inscrits :2359
Membres en ligne : 0
Invités en ligne : 2


|
Menu Snippets (navigation): |
Détails du snippet : Créer une fenêtre About |
Informations sur l'auteur de ce snippet : | |

Hors ligne
| cfdev (Membre)
Lieu: Alpes de Haut Provence
Inscrit le : 08-11-2007
Messages: 127
Snippets: 4
Tutoriels: 0
|
Introduction / Description : | |
Marre de faire des fenêtres about toutes pas belles  ? wxWidgets nous facilite la vie avec la wxAboutDialogInfo. Cette class nous permet de diffuser toutes les informations nécessaires à notre application (nom, version, developpeur, licence....).
Voici un petit exemple de son utilisation : Ne pas oublier de lier la librairie "adv" si vous êtes en multilib avec le header qui va bien. <wx/aboutdlg.h>
Code wxWidgets: wxAboutDialogInfo info; info.SetName(wxT("monProg")); info.SetVersion(wxT("1.0")); wxString msg = _("Ce programme fait plein de truc sympa!"); msg << wxT("\n\nCompilation: ") << wxT(__DATE__) << wxT(" ") << wxT(__TIME__); msg << wxT("\n") << wxbuildinfo(long_f); msg << wxT("\n") << wxT("GCC ") << wxT(__VERSION__); info.SetDescription(msg); info.SetCopyright(wxT("(C) 2009 wxDevfr Team")); info.SetLicense(wxT("Ma licence préférée")); info.SetWebSite(wxT("https://www.wxdev.fr/")); info.AddDeveloper(wxT("moi <moi@provider.com>")); info.AddTranslator(wxT("lui <lui@provider.com>")); info.AddArtist(wxT("Tango icon - http://tango.freedesktop.org/")); wxAboutBox(info);
Cerise sur le gâteau, le style de cette fenêtre dialogue s'adapte à la plateforme sur laquelle elle est compilée.
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1390
Snippets: 25
Tutoriels: 6
Site web
Hors ligne |
Hello.
Très utile pour quiconque souhaite afficher rapidement (et surtout très simplement) une petite boite "A propos de".
Petite précision : il faut penser à linker l'application correspondante avec la lib "adv" de wxWidgets (pour ceux qui compilent en multi-lib).
@+ Xav'
|
Le nouveau portail wxWidgets francophone : www.wxdev.fr Ben en fait, vous y êtes déjà ... et effectivement, depuis le temps, ce n'est plus tellement nouveau....
|
cfdev (Membre)
Lieu: Alpes de Haut Provence
Inscrit le : 08-11-2007
Messages: 127
Snippets: 4
Tutoriels: 0
Site web
Hors ligne |
En effet ainsi que le Header.
|
GNU Linux Power ! Slacker
|
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1390
Snippets: 25
Tutoriels: 6
Site web
Hors ligne |
Hello.
Par défaut, le titre de la boite de dialogue est en anglais.
Voici une petite astuce pour le modifier sans implémenter un système de traduction automatique.
En fait, la fonction wxAboutBox utilise un wxGenericAboutDialog. Il suffit donc d'utiliser cette classe :
Code wxWidgets: // on aura besoin d'un header spécifique #include "wx/generic/aboutdlgg.h" // Pour les renseignements concernant l'application, c'est la même chose : wxAboutDialogInfo info; info.SetName(wxT("monProg")); info.SetVersion(wxT("1.0")); wxString msg = _("Ce programme fait plein de truc sympa!"); msg << wxT("\n\nCompilation: ") << wxT(__DATE__) << wxT(" ") << wxT(__TIME__); msg << wxT("\n") << wxbuildinfo(long_f); msg << wxT("\n") << wxT("GCC ") << wxT(__VERSION__); info.SetDescription(msg); info.SetCopyright(wxT("(C) 2009 wxDevfr Team")); info.SetLicense(wxT("Ma licence préférée")); info.SetWebSite(wxT("https://www.wxdev.fr/")); info.AddDeveloper(wxT("moi <moi@provider.com>")); info.AddTranslator(wxT("lui <lui@provider.com>")); info.AddArtist(wxT("Tango icon - http://tango.freedesktop.org/")); // On crée la boite de dialogue wxGenericAboutDialog dlgAbout(info, this); // On modifie le titre dlgAbout.SetTitle(_T("A propos de ") + info.GetName()); // et on l'affiche dlgAbout.ShowModal();
|
Le nouveau portail wxWidgets francophone : www.wxdev.fr Ben en fait, vous y êtes déjà ... et effectivement, depuis le temps, ce n'est plus tellement nouveau....
|
Menu Snippets (navigation): |
|