affichage avec Xlib

affichage avec Xlib - C - Programmation

Marsh Posté le 02-02-2004 à 16:13:59    

Bonjour tout le monde
 
Voilà, j'ai découvert ce matin la Xlib sous Unix, et j'aimerais juste savoir pourquoi j'ai pas d'affichage qui est pas mis à jour :  
 
#include <X11/Xlib.h>
#include <X11/Xutil.h>
...
 
  // INITIALISATIONS XLIB
  int taille_h,taille_v  ;
  GC      gc;
  Display* ConnexionServeurX = XOpenDisplay(NULL);   // Connection au serveur X
  int     screen;
  Window  Fenetre, root;
  unsigned long Blanc, Noir;
  screen = DefaultScreen (ConnexionServeurX);
  gc = DefaultGC (ConnexionServeurX, screen);
  root = RootWindow (ConnexionServeurX, screen);
  Blanc = WhitePixel (ConnexionServeurX, screen);
  Noir = BlackPixel (ConnexionServeurX, screen);
 
...
 
Fenetre = XCreateSimpleWindow(ConnexionServeurX,root,0,0,800,600,0,Blanc,Blanc) ;   // Creation d'une fenetre de coordonnees 0,0 et de 800 sur 600, de couleur de fond blanche et bordure blanche //
  XMapWindow(ConnexionServeurX, Fenetre) ;         // Mapping de la fenêtre
  XSelectInput(ConnexionServeurX, Fenetre,KeyPressMask) ;      // On selectionne les evennements utiles , KeyPressMask pour capturer un evenement clavier
  XSetBackground(ConnexionServeurX,gc,Blanc) ;
  XSetForeground(ConnexionServeurX,gc,Blanc) ;
  XFillRectangle (ConnexionServeurX, Fenetre, gc, 60, 60, 20, 10) ;
  XFlush(ConnexionServeurX);
 
 
  XEvent Evenement;       // declaration d'un evenement
  do {
    XNextEvent(ConnexionServeurX, &Evenement) ;
    XFlush(ConnexionServeurX) ;
  } while(Evenement.type != KeyPress) ;     // afficher la fenetre tant qu'aucune touche n'est pressee
 
 
 
Pourriez vous me dire pk ça ne marche pas ??? (J'ai que le fond noir, et qd j'appuie sur une touche la fenêtre s'en va, mais pas de figure blanche dedans)

Reply

Marsh Posté le 02-02-2004 à 16:13:59   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed