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

C++ Discussion :

Développement d'interface graphique


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut Développement d'interface graphique
    Je souhaite developper une interface graphique GUI (ecrire de texte dedans,mettre des boutons,gerer des evenements utilisateurs sur des objets,.....) avec C++ sous VC++,donc OS=windows .
    Ma question est simple :
    Est ce qu'en dehors des API win32,MFC,Winforms, existe-il des bibliotheques C++ qui permettent de faire des fenetres à l'image de ceux de windows.?

    Mon intuition me dit non!! (les bibliotheques gtk sont ils portables sur windows?).

    Merci

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    GTK+ fonctionne sous windows en en émulant le look & feel.
    En C++, il y a un wrapper nommé GTKmm.

    Après il y a aussi Qt, wxwidgets qui eux font utilisation des APIs win32.

  3. #3
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par loufoque
    Après il y a aussi Qt, wxwidgets qui eux font utilisation des APIs win32.
    Qt n'encapsule pas les API win32, c'est comme GTK. wxWidgets utilise les fenêtres natives de la plateforme, pas Qt.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Par défaut
    Qu'importe, wxwidgets les utilise en interne.
    D'ailleurs beaucoup considèrent que c'est un avantage car les applics l'utilisant ont exactement la même tête que les autres applics de la plateforme. Ce qui évitera que toutes les tatas janines du monde se demandent: "sacré nom di dju, pourquoi qu'le truc y ressemble pas aux autres trucs?".

  5. #5
    Membre émérite
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 943
    Par défaut
    En regardant la faq tu aurais trouvé ca

    http://c.developpez.com/faq/cpp/?pag...GENERALITE_gui

    sinon tu as des GUI specifique utilisant SDL ou autre.

  6. #6
    Membre chevronné Avatar de aziz jim
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    455
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 455
    Par défaut
    salut observ
    ici tu trouveras une belle liste(non exaustive) des bibliothèques c et c++(GUI et autres) :
    le nom, le langage( c ou c++), la plate-forme supportée, le genre de la licence, ainsi qu'une petite description.(enjoy )
    http://c.developpez.com/bibliotheques/#Graph

  7. #7
    mat.M
    Invité(e)
    Par défaut
    Citation Envoyé par Miles
    Qt n'encapsule pas les API win32, c'est comme GTK. wxWidgets utilise les fenêtres natives de la plateforme, pas Qt.
    ??
    Comment fait Qt pour afficher une fenêtre sous Windows ( puisqu'ilk ya une version Windows de Qt ) sans faire appel quelque part des fonctions de Windows ?

  8. #8
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par mat.M
    ??
    Comment fait Qt pour afficher une fenêtre sous Windows ( puisqu'ilk ya une version Windows de Qt ) sans faire appel quelque part des fonctions de Windows ?
    Il n'utilise pas, comme wxWidgets, les widgets propres à Windows.

  9. #9
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 392
    Par défaut
    Mais je suppose qu'ils utilisent quand même, pour la fenêtre principale, une fenêtre Win32 ? C'est juste le contenu qui est propre à Qt, non ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  10. #10
    mat.M
    Invité(e)
    Par défaut
    Citation Envoyé par Miles
    Il n'utilise pas, comme wxWidgets, les widgets propres à Windows.
    ?? Dans le monde win32 je ne connais pas les widgets.
    En dessous de la couche applicative il ya les fonctions win32 aussi diverses que Rectangle(HDC..) ou bien WaitForSingleObject.....


    C'est totalement impossible d'écrire une appli Windows sans quelque part faire appel à des API win32.
    Sauf si c'est
    *une appli ms-dos 16bits
    *un service Windows
    *.NET ? Mais même le framework finit par appeler des API win32

    La manière dont procéde wxWidget c'est qu'on appelle des fonctions contenues dans des dll , tout comme des classes définies dans des lib ou dll de Qt..
    Ces mêmes dll qui selon l'OS utilisent des API de Windows ou non avec maintes #ifdef ...

  11. #11
    mat.M
    Invité(e)
    Par défaut
    Citation Envoyé par observ
    Est ce qu'en dehors des API win32,MFC,Winforms, (les bibliotheques gtk sont ils portables sur windows?).
    Merci
    Décidemment il faudrait donner des cours au gens !
    win32 n'est pas une classe C++ !

    Ce sont des fonctions Windows bas-niveau entre l'OS et l'application ; TOUT langage de programmation ( ou runtime comme la JVM de Java par exemple ) utilise ces fonctions pour faire un programme avec interface utilisateur avec un PE valide win32


    >>(les bibliotheques gtk sont ils portables sur windows?).
    oui

    Citation Envoyé par loufoque
    GTK+ fonctionne sous windows en en émulant le look & feel.
    En C++, il y a un wrapper nommé GTKmm.
    Après il y a aussi Qt, wxwidgets qui eux font utilisation des APIs win32.
    Décidemment la confusion règne : tout "class wrapper" qui fonctionne sous Windows et affiche une fenêtre Windows avec barre de titre utilise les API win32.
    C'est radicalement impossible d'afficher une fenêtre sous Windows même par le biais d'un runtime , dll ou quoique ce soit...
    Simplement avec GTK+ on n'appelle pas directement ces fonctions elles sont encapsulées

  12. #12
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Décidemment la confusion règne : tout "class wrapper" qui fonctionne sous Windows et affiche une fenêtre Windows avec barre de titre utilise les API win32.
    J'ai dit cela pour simplifier, d'autant plus que je ne connais pas le terminologie exacte des différentes couches des APIs que fournit windows. Inutile de pinailler.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Blackberry développement d'interface graphique
    Par Watier_53 dans le forum Développement Mobile en Java
    Réponses: 0
    Dernier message: 15/09/2009, 16h21
  2. Réponses: 2
    Dernier message: 05/12/2008, 10h22
  3. [Débutant] Développement des Interfaces Graphiques
    Par djtsou dans le forum Interfaces Graphiques
    Réponses: 13
    Dernier message: 29/03/2008, 12h34
  4. outil pour développer un interface graphique??
    Par vasilov dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 25/06/2005, 18h11

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