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

  FORUM HardWare.fr
  Programmation
  Java

  [JAVA/Résolu] problème de rafraichissement avec une image ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JAVA/Résolu] problème de rafraichissement avec une image ...

n°1070734
fucky_fuck
Posté le 03-05-2005 à 17:26:27  profilanswer
 

Bonjour,
 
Je suis en train de commencer a faire un petit jeu et j'ai un petit problème
 
Donc pour faire simple, j'ai un JFrame divisé en deux :
un JPanel pour poser mes boutons
et un autre gamePanel qui dérive de JPanel pour pouvoir surcharger la méthode paint
 
le problème étant que lorsque ma fenêtre est créée, repaint est bien appelée sur le gamePanel mais celui ci n'affiche rien. par contre si je deplace la fenetre hors de l'écran, ou que je la réduit, ou que je met un actionListener sur un bouton qui va appeler le repaint du gamePanel, ca marche et mon image est affichée !
 
voici le code ...
 

Code :
  1. public class GraphicalJeu extends JFrame {
  2. private JButton start=new JButton("Start" );
  3. private JButton quit=new JButton("Reset" );
  4. private JButton reset=new JButton("Quit" );
  5. private JPanel panneau     = new JPanel();
  6. private GamePanel gamePanel   = null;
  7. private JPanel buttonPanel = new JPanel();
  8. private JPanel lifePanel = new JPanel();
  9. private JLabel gommeLabel = new JLabel("Nombre de gommes : X" );
  10. public GraphicalJeu(String arg0,Jeu jeu) {
  11.  super(arg0);
  12.  gamePanel   = new GamePanel(jeu);
  13.  // initialisation fenêtre
  14.  setBounds(100,100,800,600);
  15.         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  16.    
  17.    // initialisation panneau global
  18.    // j'ai virer les gridbaglayout ...
  19.  ...   
  20.     panneau.setLayout(grillePanneau);
  21.  ...
  22.     panneau.add(gamePanel);
  23.  ...
  24.     panneau.add(buttonPanel);
  25.    
  26.  ...
  27.     buttonPanel.setLayout(grilleButtonPanneau);
  28.  ...    
  29.     buttonPanel.add(start);
  30.      ...
  31.     buttonPanel.add(reset);
  32.  ...    
  33.     buttonPanel.add(quit);
  34.  ...         
  35.     buttonPanel.add(gommeLabel);
  36.  ...    
  37.     buttonPanel.add(lifePanel);
  38.  ...
  39.     setContentPane(panneau);
  40.     setVisible(true);    
  41. }
  42. }


 

Code :
  1. public class GamePanel extends JPanel {
  2. public void paint(Graphics g)
  3. {
  4.  Image imagePlace = Toolkit.getDefaultToolkit().getImage("placevide.jpg" );
  5.  g.drawImage(imagePlace,100,100,null);
  6. }
  7. }


 
il faut noter que je vais bien entendu pas charger l'image a chaque fois, mais c'est juste pour le test ...
 
Si quelqu'un avait une idée ... doit y avoir un truc que j'ai pas fait correctement ...
petite précision : Java 1.5


Message édité par fucky_fuck le 03-05-2005 à 18:21:11
mood
Publicité
Posté le 03-05-2005 à 17:26:27  profilanswer
 

n°1070748
Profil sup​primé
Posté le 03-05-2005 à 17:37:42  answer
 

Commence par surchager la méthode "paintComponent" de ton JPanel et non pas "paint".

n°1070755
fucky_fuck
Posté le 03-05-2005 à 17:45:37  profilanswer
 


ça ne change rien ...
mais après lecture du jdk c'est vrai que ça parait plus logique ...

n°1070783
Profil sup​primé
Posté le 03-05-2005 à 18:06:40  answer
 

Essaie d'ajouter "this" comme image observer.

n°1070806
fucky_fuck
Posté le 03-05-2005 à 18:20:53  profilanswer
 


merci maitre !  :jap:


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

  [JAVA/Résolu] problème de rafraichissement avec une image ...

 

Sujets relatifs
Probleme d'accent avec FileReaderProbleme Access à MySQL
[RESOLU]Problème résultat requête MySQLCreation trombinoscope : probleme de report
[Java] Masquer une fenêtre ? [Résolu][Java]Comment passer par référence un int ?
Javascript + XHTML : problème DOM[Résolu][WxWidgets] Gestion du clavier...
Plus de sujets relatifs à : [JAVA/Résolu] problème de rafraichissement avec une image ...


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