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 avec le lge C


Sujet :

C

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Par défaut interface graphique avec le lge C
    j'ai besoin de faire une interface graphique pour un tp avec le langage C(borland ou turbo) si c'est possible (faisable)indiquer moi un site ou autre ou je pe trouver les commandes et les instructions pour le faire?merci

  2. #2
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Salut,

    Tu peux par exemple utiliser l'API natif sous Windows: http://chgi.developpez.com/windows/

    Moi, j'utilise en général GTK+ pour mes interfaces graphiques en C. Voici un tutoriel:
    http://nicolasj.developpez.com/gtk/cours/

    P.S. Je ne connais pas les compilateurs Borland et Turbo et je n'ai jamais essayé la bibliothèque GTK+ avec.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  3. #3
    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:
    Puisque tu utilises turbo je suppose que tu veux bien programmer sous DOS c'est ca? Il y a deux solutions :

    Avant tout, sache que la mémoire vidéo (sous DOS) commence à l'adresse A000:0000. C'est dans la RAM bien sur. Sous DOS, une adresse est représenté sur 20bits (lorsqu'il s'agit de pointeurs far, c'est à dire autorisés à pointer des adresses hors du segment du programme) et il y a deux manières de réprésentation différentes ainsi A000:000 (mode segmenté) par exemple = en fait A000<<4 + 0000 soit A0000. A000 est appelée l'adresse du segment et 0000 l'offset par rapport à ce segment. Comme je l'ai dit, cette adresse c'est l'adresse de début de la mémoire vidéo autrement dit l'adresse du point de coordonnées (0, 0) sur l'écran. Le reste ca dépend du mode vidéo que tu utilises. Généralement, on utilise le mode 13h (320 x 200 en 256 couleurs) ou le mode 12h (640 x 480 en 16 couleurs). Tu l'auras deviné, en 256 couleurs un octet représente 1 pixel alors qu'en 16 couleurs il représente 2 pixels. Pour écrire dans un pixel, rien de plus simple. Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    char far * px = MK_FP(0xA000, 0); //MaKe Far Pointer
    *px = 255; //blanc
    Mais avant tout, il faut passer au mode graphique en appelant la fonction 0 de l'interruption 10h.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    _AH = 0; //Fonction 0 : changement de mode
    _AL = 0x13; //Mode 13h
    geninterrupt(0x10); //INT 10h
    A la fin du mode graphique, il faut revenir en mode texte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    _AH = 0;
    _AL = 0x03; //Mode texte 80 x 25 16 couleurs
    geniterrupt(0x10)
    Deuxième solution (tu vas aimer )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    #include <graphics.h>
    int main()
    {
    int gDriver = DETECT, gMode;
    char DriverPath[] = "C:\\TC\\BGI";
     
    initgraph(&gDriver, &gMode, DriverPath);
    putpixel(0, 0, 3);
    closegraph();
    return 0;
    }
    Maintenant, il te reste plus qu'à aller sur google à la chasse de bons tutos . Mais honnêtement, je te conseille d'apprendre à programmer sous Windows.

Discussions similaires

  1. [Débutant]Interface graphique avec eclipse
    Par steelidol dans le forum Eclipse Platform
    Réponses: 5
    Dernier message: 08/06/2006, 13h12
  2. Interface graphique avec cygwin
    Par icetechnik dans le forum Applications et environnements graphiques
    Réponses: 11
    Dernier message: 05/12/2005, 14h23
  3. [Plugin][VE]Interface graphique avec VE
    Par GENERYS dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 24/06/2005, 11h40
  4. Interface graphique avec plusieurs fenêtres
    Par Copps dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 30/03/2005, 18h00

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