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 :

Interface graphique sous la console


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de _SamSoft_
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    798
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 798
    Par défaut Interface graphique sous la console
    Bonjour, cela fait 4 jours que je cherche des codes, des tutoriaux des informations sur : "Comment créer une interface graphique en C et en mode console ?", si vous ne voyez pas bien de quoi je parle, je vais essayer de vous expliquer, il faut que vous essayer de visualiser déjà la fenetre console ensuite ajoutez y une barre de menu qui date des années 80, style ms dos mais cette barre de menu vous pouvez la controler avec la souris, alors est ce possible en C si oui avec quelle librairie ou alors comment y arriver ?

    Merci d'avance

    PS : Plutot que des mots, voilà une image vous montrant le style d'interface que je voudrais pouvoir créer en C (car je suis un nostalgique de la console) !



    PS2 : Ne faites pas attention au rond rouge qui entoure le mot (qb.exe)

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Il faut utiliser la bibliothèque Graphics me semble t-il, voir l'url:
    http://moscova.inria.fr/~peskine/ens...phics-doc.html
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Membre éclairé Avatar de _SamSoft_
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    798
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 798
    Par défaut
    Merci, je voulais juste préciser que je travail en C, je suis sous Windows XP sp2 et j'utilise Devcpp, est ce compatible tout cela car j'ai vu que c'était pour le langage Caml et
    La bibliothèque graphics devrait fonctionner sur tout système Unix (Linux, FreeBSD, OpenBSD, MacOS X...)
    , windows n'est pas admis ?

    Pour Emmanuel, vraiment ? vous etes certain que ca n'a pas de chance sous xp et ou vista ?

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par _SamSoft_
    Merci, je voulais juste préciser que je travail en C, je suis sous Windows XP sp2 et j'utilise Devcpp, est ce compatible tout cela car j'ai vu que c'était pour le langage Caml et , windows n'est pas admis ?
    Je pense qu'il parlait de BGI (Borland Graphic Interface).
    Pour Emmanuel, vraiment ? vous etes certain que ca n'a pas de chance sous xp et ou vista ?
    Pour XP, peut être, si sa machine virtuelle (VM, ou virtual machine, qui fait tourner les applications 16-bit) émule suffisamment de fonctions (j'ai des doutes sur l'accès en mémoire vidéo et sur les interruptions 10 et 33h). [EDIT]

    Il y a un moment où il faut savoir tourner la page. C'est à grand regret que j'ai abandonné mon cher Borland C++ 3.1 après 15 ans de bons et loyaux services, mais j'ai fini par m'adapter et par passer à gcc et à Code::Blocks...

    Ceci-dit, en C++ (pré-ANSI), il existe une bibliothèque de classes appelée Turbovision d'origine Borland, qui a peut être été portée pour MinGW, donc utilisable sous Windows XP (pour Vista, je ne me prononce pas, je ne suis même pas sûr que Dev-C++ fonctionne sous Vista), et qui permet de faire exactement ce que tu veux (elle a servi entre autres, à implémenter l'IDE de Borland C++ 3.x). Dans les années 90, mon chef de projet s'en était servi pour réaliser une interface en mode texte du plus bel effet pour piloter une application télécom complexe par un PC... (France Telecom avait été impressionné).

    Mais tu irais plus vite à apprendre un GUI comme GTK+ et à laisser tomber le TUI... On est plus dans les années 90...

  5. #5
    Membre éclairé Avatar de _SamSoft_
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    798
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 798
    Par défaut
    Vous avez raison, mais lorsque je parle de programmation console c'est pour le pur plaisir et non pas pour créer réelement quelque chose, moi je programme en RealBasic et je vais m'achetter un livre (QT4 and C++ programming interface) pour apprendre un peu le C++ pour pouvoir me servir plainement de QT4 , sinon n'y a til pas du tout un moyen d'arriver à faire du TUI ? Sous xp ?

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par _SamSoft_
    sinon n'y a til pas du tout un moyen d'arriver à faire du TUI ? Sous xp ?
    http://tvision.sourceforge.net/

  7. #7
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par _SamSoft_
    Bonjour, cela fait 4 jours que je cherche des codes, des tutoriaux des informations sur : "Comment créer une interface graphique en C et en mode console ?",
    Graphique ? Console ? C'est pas clair.
    si vous ne voyez pas bien de quoi je parle, je vais essayer de vous expliquer, il faut que vous essayer de visualiser déjà la fenetre console ensuite ajoutez y une barre de menu qui date des années 80, style ms dos mais cette barre de menu vous pouvez la controler avec la souris, alors est ce possible en C si oui avec quelle librairie ou alors comment y arriver ?
    Ce n'est pas du graphisme, mais du mode texte plein écran (TUI ou Text User Interface).

    C'est possible en C sur une machine MS-DOS ou Windows 3.x ou 9x, et plus ou moins sur XP, en utilisant un compilateur Borland 16-bit comme Borland C++ 3.1 (pas facile à trouver à la vente, même d'occasion...).

    On utilise conio, comme outil de base, mais il faut tout créer à la main, et certaines fonctions comme la sauvegarde/restitution partielle d'écran (menus déroulants, par exemple) doit être faites à coups d'interruptions 10h, voire d'accès direct en mémoire vidéo... C'est pas de la tarte, mais c'est bien documenté sur le web.

    Pour la souris, il faut charger un gestionnaire de souris (mouse.com ou autre) et gérer l'interruption 33h.

    Ca a peu de chances de fonctionner sous Vista... (EDIT)

  8. #8
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut Re:
    Citation Envoyé par Emmanuel Delahaye
    C'est possible en C sur une machine MS-DOS ou Windows 3.x ou 9x, mais pas plus, en utilisant un compilateur Borland 16-bit comme Borland C++ 3.1 (pas facile à trouver à la vente...). On utilise conio, comme outil de base, mais il faut tout créer à la main.
    ...
    Ca n'a aucune chance de fonctionner sous XP ou Vista évidemment...
    Si, ca fonctionne! T'es tout simplement en train de dire la que "Une application DOS, ca n'a aucune chance de tourner sous XP ...", ce qui est tout à fait faux bien sur. J'ai fais pas mal d'applications de ce genre que j'ai compilé avec Turbo C 2.0 et qui tournent à merveille sous XP. Pour Vista je sais pas. Normalement n'importe quel compilateur DOS (Turbo C 2.0, Turbo C++ 1.0, 3.0, Microsoft C 3.0, etc.) peut faire l'affaire. Tout est dans dos.h

    Sinon, c'est vrai qu'il faut gérer l'écran avec l'interruption 10h du bios ainsi que les accès direct à la mémoire vidéo, la souris avec l'interruption 33h, etc. On peut parfaitement se passer de conio.h en utilisant les services du bios et/ou du dos.

    Si on veut une application portable, il suffit d'utiliser la technique des séquences d'échappement ANSI. Mais dans ce cas on ne pourra pas gérer la souris.

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Melem
    Si, ca fonctionne! T'es tout simplement en train de dire la que "Une application DOS, ca n'a aucune chance de tourner sous XP ...", ce qui est tout à fait faux bien sur.
    Oui, c'est vrai, je pensais à une application 32-bit...

    Ici, c'est une application 16-bit et tout l'environnement 'réel' est virtualisé. Mais à quel prix et pour quelles performances...

    Ca reste quand même une sacré bidouille (et une prouesse technique, merci Microsoft) de vouloir faire tourner du 16-bit mode réel sous NT... En tout cas, dès Windows 98SE, les interruptions matérielles (ports COM) ne fonctionnaient plus... Quand à Vista...

  10. #10
    Membre éclairé Avatar de _SamSoft_
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    798
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 798
    Par défaut
    Il reste toujours ce problème de "Et pour Vista, qu'en est il ?", sinon je passe au langage de programmation PASCAL, je vous rassure tout de suite c'est juste pour le plaisir de programmer en mode TUI (ca se dit en mode TUI ?) voilà merci pour tout, ps : sous pascal tout fonctionne, encore merci Emmanuel

  11. #11
    Membre émérite

    Profil pro
    Inscrit en
    Août 2003
    Messages
    878
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 878
    Par défaut
    Bon, résumons-nous :
    1. Nous sommes dans le forum C ;
    2. le P.O. souhaite créer une TUI ;
    3. le P.O. utilise Dev-C++ (donc très probablement MinGW32) ;
    4. le P.O. est sous XP
    5. on lui propose :
      - une bibliothèque X11 appelée "graphics", ;
      - d'utiliser un compilateur antédiluvien ;
      - d'utiliser une bibliothèque C++ appelée "tvision".


    J'ai du rater un truc : pourquoi pas (n|pd)curses ?
    C'est portable, on peut facilement trouver un "devpak" de pdcurses et il existe des bibliothèques de widgets qui permettent de faciliter le développement d'interfaces avec curses (ex. : CDK)...
    Pour d'autres alternatives, voir (entre autres) à http://cbbrowne.com/info/curses.html.

    C'étaient mes deux centimes du dimanche...

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

Discussions similaires

  1. interface graphique en mode console à la Edit
    Par subzero82 dans le forum Windows
    Réponses: 7
    Dernier message: 12/07/2006, 00h57
  2. Pas d'interface graphique sous Mandriva
    Par JavaAcro dans le forum Applications et environnements graphiques
    Réponses: 5
    Dernier message: 11/05/2006, 09h53
  3. Interface graphique sous Debian
    Par the watcher dans le forum Applications et environnements graphiques
    Réponses: 5
    Dernier message: 09/04/2006, 11h08
  4. Changer l'interface graphique sous Mandrake 10
    Par Bidouille dans le forum Applications et environnements graphiques
    Réponses: 7
    Dernier message: 08/09/2004, 11h25
  5. Interface graphique sous embedded visual C++ !!
    Par acastor dans le forum MFC
    Réponses: 4
    Dernier message: 16/03/2004, 19h35

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