wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :2359

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

Valid XHTML 1.0 Transitional

Valid CSS2

Menu Snippets (navigation):
Pages: 1    Accueil » Snippets » Divers
» [wxCmdLineParser] : Vérifier les paramètres de la ligne de commande
Détails du snippet : [wxCmdLineParser] : Vérifier les paramètres de la ligne de commande
Informations sur l'auteur de ce snippet :


Hors ligne
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Introduction / Description :
Bonjour à tous.
Voici une méthode pour utiliser la classe wxCmdLineParser.
Cette classe sert à vérifier les paramètres fournis à l'application lors de son lancement.
Elle peut également servir à afficher l'aide sommaire concernant ces paramètres.

Voici un exemple de son utilisation, dans la méthode "OnInit" de la classe d'application.
Contenu du snippet :

Code wxWidgets:

bool MyApp::OnInit()
{
    // On initialise le wxCmdLineParser avec les valeurs de la ligne de commande
    wxCmdLineParser parser(argc,argv);
    // On lui indique quelles sont les commandes disponibles
 
    // La commande "-h" ou "--help" et sa description
    parser.AddSwitch(_T('h'),_T("help"),_T("Afficher cette aide"));
    // Par exemple, un switch "-u" ou "--update", et sa description
    parser.AddSwitch(_T('u'),_T("update"),_T("Mode mise à jour"));
 
    // Ensuite, une option de type "string" : "-n" ou "--name"
    parser.AddOption(_T("n"),_T("name"),_T("Nom du fichier à ouvrir"),wxCMD_LINE_VAL_STRING);
    // Vous pouvez en ajouter autant que vous voulez comme ça...
 
    // Maintenant, on demande le traitement de la ligne de commande
    // le paramètre false sert à ne pas afficher tout de suite les erreurs
    bool bRes=(parser.Parse(false)==0);
    // S'il y avait des erreurs, on affiche l'aide et on sort
    if (bRes==false)
    {
        parser.Usage();
        return false;
    }
    // Si le paramètre "-h" ou "--help" était passé, on fait de même
    if (parser.Found(_T('h')))
    {
        parser.Usage();
        return false;
    }
    // Pour récupérer la valeur du paramètre "name" :
    wxString sName=_T("");
    if (parser.Found(_T("n"),&sName)
    {
        // sName contient maintenant la valeur passée en paramètre
    }
    // etc, etc......
 
    return true;
}
Explications finales :
Voilà, c'est aussi simple que cela.
Pour plus de précisions sur la classe wxCmdLineParser, je vous conseille d'aller faire un tour sur la doc officielle à son sujet.

Sachez déjà qu'il est également possible de récupérer des valeurs de type "long", ou "date".

@+
Xav'
Commentaires

Il n'y a pas encore de commentaire pour ce snippet.
Menu Snippets (navigation):
Pages: 1    Accueil » Snippets » Divers
» [wxCmdLineParser] : Vérifier les paramètres de la ligne de commande