begin process at 2012 05 28 20:35:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Déplacement et synchronisation dans de 2 fenetres! Langage C !!!! Merci...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Déplacement et synchronisation dans de 2 fenetres! Langage C !!!! Merci...

lundi 21 avril 2003 à 13:16:53 | Déplacement et synchronisation dans de 2 fenetres! Langage C !!!! Merci...

olivier856

Bonjour ,

J'ai VRAIMENT besoin de votre aide !!!! Voilà.....

le programme (en langage C) ci joint permet de créer deux fenêtres (redimensionnables).
Mon problème est le suivant: j'aimerais déplacer diagonalement dans une fenêtre une balle (représentée par le caractère "o").
Et j'aimerais que cette balle se déplace d'une fenetre à l'autre. (ie quand elle sort de la fenetre A il faut qu'on la voit apparaitre dans la fenetre B)
Tout ça grace à ce merveilleux outil qu' est XWINDOW!!!

Merci à tout ceux qui auront pris le temps de lire ce bref message !!!!!!! Et merci à tout ceux qui pourront m'aider!!
JOYEUSE PAQUES A TOUS:::



#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

GC gc;
Display *display;
int screen;
Window wina, winb, root;
unsigned long white_pixel, black_pixel;
XSetWindowAttributes attrib;
unsigned long mask_attrib;

main() {
if ((display = XOpenDisplay ("")) == NULL) {
fprintf (stderr, "Can't open Display\n");
exit (1);
}
gc = DefaultGC (display, screen);
screen = DefaultScreen (display);
root = RootWindow (display, screen);
white_pixel = WhitePixel (display, screen);
black_pixel = BlackPixel (display, screen);
wina = XCreateSimpleWindow (display, root,
0, 0, 200, 80, 5, black_pixel, white_pixel);
XSelectInput (display, wina, ButtonPressMask);
XStoreName (display, wina, "gravity_S");
XMapWindow (display, wina);
winb = XCreateSimpleWindow (display, root,
0, 0, 200, 80, 5, black_pixel, white_pixel);
XSelectInput (display, winb, ButtonPressMask);
XStoreName (display, winb, "gravity_NW");
XMapWindow (display, winb);
attrib.bit_gravity = SouthGravity;
mask_attrib = CWBitGravity;
XChangeWindowAttributes(display, wina, mask_attrib, &attrib);
attrib.bit_gravity = NorthWestGravity;
XChangeWindowAttributes(display, winb, mask_attrib, &attrib);

for (;;) {
XEvent ev;
XNextEvent (display, &ev);
switch (ev.type) {
case ButtonPress :
if (ev.xbutton.window==wina) {
XClearWindow (display, wina);
XDrawString (display, wina, gc, 10, 10, "O", 1);
}
if (ev.xbutton.window==winb) {
XClearWindow (display, winb);
XDrawString (display, winb, gc, 10, 10, "O", 1);
}
break;
default :
break;
}
}

}
lundi 21 avril 2003 à 20:33:32 | Re : Déplacement et synchronisation dans de 2 fenetres! Langage C !!!! Merci...

bouba

Je ne comprends pas trop bien, tu ve faire circuler une balle mais tu ne change pas les coordonnées de celle-ci dans la fenêtre, je ne vois pas comment elle peut bouger!!!
De plus les évennement que tu utilises ne sont pas les bons. Si tu ve que la balle change de fenêtre quand tu sort de la première il faut utiliser les evennement LeaveNotify et un autre, je sais plus trop lesquels c'est mais c'est un truc dans le style.
tu dois bien sûr fair avant un truc comme ca pour utiliser ces évennements.
XSelectInput (display, winb, ButtonPressMask | NotifyMask);

Ensuite il faut que tu fasses des fenêtres qui ne peuvent pas être modifées au niveau de leur taille.
Enfin, juste une chtite critique, ton évenement, il serais plus judicieux de le déclarer en dehors de la boucle for.
Voila, si tu ne trouve pas ou que tu as encore des problème envoi moi un message ou répond a celui-ci.
Bonne chance!
Bouba


Cette discussion est classée dans : pixel, display, attrib, winb, wina


Répondre à ce message

Sujets en rapport avec ce message

trajectoire+synchronisation de fenetres (en C).... [ par mamy ] Bonjour,Voilà en ce moment je découvre (assez péniblement) l'utilisation du système X window pour réaliser un projet.Grace au programme suivant je cr Ouverture de plss canaux d'affichages avec Xwindow (urgent) [ par mamy ] bonjour,Je réalise un programme en langage C qui utilise principalement l'outil xwindow. Mon problème est que je n'arrive pas à ouvrir 2 canaux d'affi Couleurs avec X11 [ par toto000 ] Bonjour,je suis novice en programmation graphique sous X11 et j'aimerai savoir comment afficher un pixel coloré.Je sais qu'il existe une fonction putp Pixel Shader [ par NoRabbit ] Hello,j'ai testé quelques tutoriaux sur les pixels shader avec opengl mais ça ne veut pas fonctionner. En fait, ma carte (ou mes drivers ? j'ai téléch Pixel shader [ par Galmiza ] Salut,Je suis très étonné de voir qu'il n'y a pas de boucles dans les pixels shader.Ex:; A simple pixel shader; This uses the ps 2.0 instruction set a modifier le nb de bit par pixel [ par Adeon ] Salut, ca va faire presque un an que je programme en api et je commence tout juste a comprendre le vrai fonctionnement des bitmaps. avant je fesais de imagerie sur C [ par hadlak ] je suis debutant en c.je doit faire un projet qui consiste a creer une application permettant d'afficher une image pixel par pixel et en creant une p Histoire de pixels et de points [ par elflink ] Jamais les pixels n'ont connu de tels points.car les pixels sont des pixels,et les points des points.Mais à connaitre la couleur d'un points, autant c Recuperer la couleur d un pixel [ par Ptlpn ] Bonjour,Jutilise la librairie Glut, te je voulais en fait recuperer la couleur d un pixel donné. En fait, je souhaite faire une palette de couleur, et glutDisplayFunc [ par lilington ] salut j'ai un proble avec la fontion glutDisplayFunc je veux faire passer une fonction qui a un argument: voici le code int main(int argc,char** argv


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales