IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxWidgets Discussion :

Afficher un shell dans une fenêtre wxWidget


Sujet :

wxWidgets

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Afficher un shell dans une fenêtre wxWidget
    Bonjour,

    j'aimerais pouvoir afficher (et utiliser) une fenêtre de commande DOS dans une fenêtre d'application windows, pour avoir la frame Windows et plus cette horrible frame que possède la fenêtre 'cmd'

    Quelqu'un saurait'il s'il est possible de le faire en utilisant les wxWidgets ? Si oui comment ?

    @+

  2. #2
    Membre habitué

    Inscrit en
    Mars 2002
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 83
    Points : 125
    Points
    125
    Par défaut
    Citation Envoyé par BlueCat
    Bonjour,

    j'aimerais pouvoir afficher (et utiliser) une fenêtre de commande DOS dans une fenêtre d'application windows, pour avoir la frame Windows et plus cette horrible frame que possède la fenêtre 'cmd'

    Quelqu'un saurait'il s'il est possible de le faire en utilisant les wxWidgets ? Si oui comment ?

    @+
    Le mode shell, n'a pas de fenêtre (si ce n'est celle de windows). Il est possible par contre de rediriger la sortie standard std::cout vers par exemple un textctrl

    Je ne sais pas si ça va marcher pour ton cas, mais regarde du côté :

    std::ostream avec la fonction rdbuf( )
    ou alors la classe wxStreamToTextRedirector

    Tu peux jeter un coup d'oiel du côté de l'exemple "Exec" dans le repertoire

    %wxPath%\sample\Exec

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Je débute en wxWidgets, je vais regarder un peu plus en détail wxShell, wxExecute et wxProcess et les pistes que tu m'as fourni.
    merci
    @+

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Avec wxProcess, j'ai trouvé mon bonheur... ou presque.

    Est ce qu'il y a une autre méthode que du polling sur le wxInputStream pour récupérer le résultat de la commande ?

    J'ai remarqué aussi que pour des commandes comme "ipconfig", je suis obligé de mettre un sleep d'environ 600ms entre le moment où j'ai écris la commande dans l'OutputStream et le moment où je lis l'InputStream, ce qui pénalise l'interactivité avec l'utilisateur.

    Y aurait t'il une raison à ce délai, et comment le réduire ?

Discussions similaires

  1. [WD10] Afficher un état dans une fenêtre MDI mère
    Par GodGives dans le forum WinDev
    Réponses: 0
    Dernier message: 05/04/2010, 13h35
  2. Afficher du texte dans une fenêtre
    Par new_matlab dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 27/04/2009, 17h31
  3. Afficher un PDF dans une fenêtre
    Par chpounz dans le forum wxPython
    Réponses: 3
    Dernier message: 19/03/2009, 19h36
  4. Réponses: 5
    Dernier message: 19/05/2008, 20h58
  5. Ping dans une fenêtre wxWidget
    Par cotede2 dans le forum wxWidgets
    Réponses: 3
    Dernier message: 14/05/2007, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo