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

Bibliothèques C++ Discussion :

Applications graphiques lib ou pas?


Sujet :

Bibliothèques C++

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 6
    Par défaut Applications graphiques lib ou pas?
    Bonjour,

    J'aurais 3 petites questions pour lesquels je ne trouve pas de réel réponses.

    Q1: j'aimerais savoir si les développeurs d'applications ayant des éléments du GUI différent de la "normal" (firefox ,photoshop , fusion etc...) utilisent des libs existantes (Qt,WxWidget etc...) pour créer leur GUI, ou développent ils directement sur la structure "pure" de l'OS (exemple: Win32 pour windows)? Ce qui impliquerais que pour être Multi-OS ils doivent attaquer le "pure" de chaque OS, et pour "gommer" les différences ils doivent trouver l'équivalent entre chaque OS.

    Q2: Pour une application de dessin tel que The Gimp, Fireworks, Corel painter, photoshop etc...) Pour "dessiner" dans la zone, utilisent-ils encors des libs? Ou controlent ils pixel par pixel dans le brute, en utilisant la progra "pure" OS?

    Q3: Sans utiliser de lib comment peut-on avoir un contrôle sur une zone d'affichage de l'ecran et le modifier? Je sais que Qt et autres peuvent permettent de créer des skins perso et de "dessiner" dans des zones, mais j'aimerais savoir comment ca se passe derrière tout ca (particulièrement sous windows).

    Merci d'avance de votre lecture et de vos reponses.

  2. #2
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    Q1: Adobe (Photoshop, Flash, etc.) a son propre systeme de fenetre depuis les suites CS3 il me semble, les autres utilisent principalement les API natives, avec MFC sous Windows et différents systemes de GUI sous les autres OS.

    Q2: Normalement quasimment toutes les bibliothèques de GUI vont te fournir de quoi dessiner, qu'elles soient natives ou pas, simplement parceque c'est la brique de base pour qu'elles-même fonctionnent et aussi pour te permettre d'embarquer (par exemple) du contenu graphique d'une autre application/bibliothèque dans une zone/fenetre donnée (par exemple intégrer le rendu d'un moteur 3D dans une fenetre lorsque tu développes un editeur 3D).

    Q3: Sans utiliser de lib, il te faut tout simplement apprendre l'API de l'Os que tu veux utiliser, sachant que sous windows tu as le choix entre MFC, ATL/WTL et leur nouveau truc dont je ne me souviens pas le nom; sous MacOSX c'es Cocoa (si un spécialiste peux me corriger là dessus) et sous les autres unix-like c'est a base de serveur X ou bien basé sur une bibliothèque de GUI intégrée d'office selon l'OS (Gnome ou KDE visiblement). Maintenant concernant les MFC, tu n'as qu'a plonger dans la doc avec de préférence un livre pour te guider.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 6
    Par défaut
    Ok je vois mieux maintenant!

    Donc c'est un énorme boulot pour être multi-os il faut créer une interface qui s'interprètent quasiment pareil sur chaque OS avec des api différentes!
    Ce qui expliquerait des fois la non portabilité:
    adobe photoshop => Linux
    eyeon fusion => OSX et Linux etc...

    En tout cas merci pour ces informations!
    Je vais tout de même essayer de faire quelques tests sur Qt, car il me semble qu'avec sa conception haut niveau il puisse quand même permettre certains choses comme cité ci-dessus.

    Enfaite j'aimerais créer un miniprojet pour voir comment on peut concevoir un GUI assez personnalisé et aussi concevoir une petite application de dessin a base de brush.

    Merci de ta réponse mon chère Klaim!

  4. #4
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    Qt est en tout cas l'api cross-platform la plus conseillée dans le coin, et pour de bonnes raisons. Donc il se peut que ça soit largement suffisant pour tes besoins.

Discussions similaires

  1. SSH invoquer application graphique sur serveur distant
    Par knecmotet dans le forum Réseau
    Réponses: 7
    Dernier message: 07/09/2008, 19h33
  2. [Débutant] Application graphique
    Par KORTA dans le forum Modules
    Réponses: 2
    Dernier message: 18/07/2004, 09h07
  3. Execution d'une application graphique
    Par BigBeni dans le forum ANT
    Réponses: 2
    Dernier message: 01/04/2004, 09h30
  4. application graphique
    Par Zazeglu dans le forum Langages de programmation
    Réponses: 9
    Dernier message: 11/10/2003, 22h27
  5. Quel langage pour un application graphique sous windows
    Par ipeteivince dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 06/06/2003, 17h00

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