Rien ne s'affiche sur ma fentre Java.

Résolu/Fermé
Utilisateur anonyme - Modifié le 30 janv. 2021 à 18:07
 Utilisateur anonyme - 31 janv. 2021 à 09:09
Rien ne s'affiche sur ma fentre Java, voici le code :

le main:
package fentre;

import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class main extends JFrame {
 
 private static final long serialVersionUID = 1L;
 public static void main(final String[] args) {
  SwingUtilities.invokeLater(new Runnable(){
 public void run(){
   new Frame("A");
   }
 });
  }
}

le panel :
package fentre;

import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JPanel;

public class  panel extends JPanel{

   /**
*
*/
 private static final long serialVersionUID = 1L;

public void paintComponant (Graphics go) {
    go.setColor(Color.green);  
 go.fillRect(16, 16, 25, 25);


     }

   }

le frame :
package fentre;

import java.awt.Panel;

import javax.swing.JFrame;

public class Frame extends JFrame {

 /**
* 
*/
 private static final long serialVersionUID = 1L;
  public Frame(String title) {
  setTitle(title);
  setVisible(true);
    setSize(1400 , 1000);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setLocationRelativeTo(null);
     add(new Panel());
  
  
  }
  

}

Vous pourrez m'aidez svp.
A voir également:

1 réponse

KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 019
30 janv. 2021 à 18:30
Bonjour,

Il faut être extrêmement rigoureux dans l'usage des noms de classes et de méthodes, car sinon tu peux rapidement faire complètement autre chose que ce que tu penses.

Dans la classe panel la méthode doit s'appeler paintComponent, avec un e, sinon ce n'est pas une surcharge de la méthode existante, mais la création d'une nouvelle méthode que Swing n'utilisera jamais.

Dans la classe Frame, tu dois ajouter un new panel(), avec un p minuscule, sinon tu n'utilises pas la classe que tu as créé, mais celle de java.awt
Remarque : du coup tu peux enlever l'import de java.awt.Panel
0
Utilisateur anonyme
31 janv. 2021 à 09:09
Merci maintenant ça fonctionne bien.
0