Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1794 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  pb avec getGraphics en java

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

pb avec getGraphics en java

n°343853
xtoune
Posté le 26-03-2003 à 14:37:21  profilanswer
 


Salut tout le monde !
 
 
voila ca fait un ti moment que je programme en java et j'ai tjs le meme probleme quand j'utilise la méthode getGraphics:
 
Qaund j'appelle cette méthode trop tot dans le programme elle me retourne null et donc mon prog plante.
ALors depuis le tps j'utilise tjs des vieilles methode, le system D ( test si c null, rappelle la méthode plus tard , etc..... )
 
J'aimerai savoir comment ki faut faire ?? Quelle est la méthode miracle  ??
 
 
merci !
 
PS: je travail actuellement avec jsdk 1.3.1

mood
Publicité
Posté le 26-03-2003 à 14:37:21  profilanswer
 

n°343872
bobuse
Posté le 26-03-2003 à 14:54:22  profilanswer
 

xtoune a écrit :


Salut tout le monde !
 
 
voila ca fait un ti moment que je programme en java et j'ai tjs le meme probleme quand j'utilise la méthode getGraphics:
 
Qaund j'appelle cette méthode trop tot dans le programme elle me retourne null et donc mon prog plante.
ALors depuis le tps j'utilise tjs des vieilles methode, le system D ( test si c null, rappelle la méthode plus tard , etc..... )
 
J'aimerai savoir comment ki faut faire ?? Quelle est la méthode miracle  ??
 
 
merci !
 
PS: je travail actuellement avec jsdk 1.3.1


ben disons que si tu l'apelle dans le constructeur, c'est trop tot [:spamafote]


---------------
get amaroK plugin
n°343949
gfive
Posté le 26-03-2003 à 15:21:40  profilanswer
 

En fait, c'est pas ça : le contexte graphique (l'object Graphics, donc) n'est instancié qu'au moment de l'affichage de ton composant à l'écran ou dans un autre device...Et ça se comprend : la façon dont marche le Graphics dépend du device, justement!
Enfin, j'ai eu des tas de problèmes avec cette limitation, moi aussi, et y'a pas 36 solutions, en fait!!

n°343955
xtoune
Posté le 26-03-2003 à 15:24:14  profilanswer
 

tout  à fait, en fait ca ne marche que qd l'objet apparait a l'ecran !
 
 
et c koi alors cette solution ? suspence...........

n°344024
xtoune
Posté le 26-03-2003 à 15:59:01  profilanswer
 

voila une bidouille que j'utilise parfois :
 

Code :
  1. while(g==null){
  2.      try{ Thread.sleep(10);}catch(InterruptedException e){}
  3.       g=d.getGraphics();
  4.     }
  5.     dessin(g);

n°344045
bobuse
Posté le 26-03-2003 à 16:07:51  profilanswer
 

xtoune a écrit :

voila une bidouille que j'utilise parfois :
 

Code :
  1. while(g==null){
  2.      try{ Thread.sleep(10);}catch(InterruptedException e){}
  3.       g=d.getGraphics();
  4.     }
  5.     dessin(g);




Ha ouais c clair que c'est crade  :sarcastic:  
 
Et la sol.  de gfive ... ?


---------------
get amaroK plugin
n°344164
gfive
Posté le 26-03-2003 à 17:11:33  profilanswer
 

ben, j'en ai pas vraiment...
 
Un exemple de code d'un de mes composants :  
 
 

Code :
  1. class Comp extends Canvas {
  2.     private Image offScreenImage;
  3.     public void paint(Graphics g) {
  4.       offScreenImage = createImage(getSize().width, getSize().height);
  5.       clear(g);
  6.       update(g);
  7.     }
  8.    
  9.     private void clear(Graphics g) {
  10.       g.setColor(parent.getDocument().DEFAULT_BACKGROUND);
  11.       g.fillRect(0, 0, getSize().width, getSize().height);
  12.     }
  13.     public void update(Graphics g) {
  14.       paintOffScreen();
  15.       getGraphics().drawImage(offScreenImage, 0, 0, this);
  16.     }
  17.     private void paintOffScreen(int index) {
  18.       if (offScreenImage == null) {
  19. offScreenImage = createImage(getSize().width, getSize().height);
  20.       }
  21.       Graphics g = offScreenImage.getGraphics();
  22.       clear(g);
  23.       //// Dessin sur g ici : on dessine sur l'image OffScreen, pour que ça scintille pas.
  24.     }
  25. }

 
 
Ca, c'est pour faire du double-buffering...Et ensuite, je m'arrange pour que paint(Graphics) ne soit pas appellée tant que ma fenêtre n'a pas été affichée... :D
 
Sinon, je vois pas..


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  pb avec getGraphics en java

 

Sujets relatifs
[Java] ou [javascript] appels methodes parametrablesproblème sur message d'erreur java
[Java] Problème constaté avec 2 cartes réseauproblème jsp/java/tomcat
les Compilateurs, Editeurs, IDE pour le Java [listing inside]graph 2d en java (soucis avec extends de java.awt.Image)
[java/vb] je cherche un equivalent de CompressString()[JAVA]expression arithmetique parenthesee +arbre binaire
[java] un petit pb entre String et Byte[Java] Client FTP [Résolu]
Plus de sujets relatifs à : pb avec getGraphics en java


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR