IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

ajouter un paint() sur jpanel


Sujet :

AWT/Swing Java

  1. #1
    Provisoirement toléré
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Points : 76
    Points
    76
    Par défaut ajouter un paint() sur jpanel
    bonsoir
    j'ai un problème , je n'arrive pas à dessiner sur jpanel je ne sais pascomment l'ajouter le paint sur jpanel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
     
    import javax.swing.*;
    import java.awt.*;
    import java.io.*;
    import java.lang.*; 
    public class test  extends JFrame        {
      JPanel jPanel1 = new JPanel();
      public test() {
        setTitle(" fenetre ");
        this.setResizable(false);
        this.setSize(650, 650);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        try {
          jbInit();
        }
        catch(Exception e) {
          e.printStackTrace();
        }
     
      }
      private void jbInit() throws Exception {
        this.getContentPane().setLayout(null);
        jPanel1.setBounds(new Rectangle(0, 29, 487, 124));
        jPanel1.setLayout(null);
        this.getContentPane().add(jPanel1, null);
      }
     
     
      public static void main(String[] args) {
        test fenetre = new test();
        fenetre.setVisible(true);
      }
     
      public void paint(Graphics g)
          {
                  // Tracer une ligne rouge entre les points (x=5, y=30) et (x=50, y=70)
                  g.setColor(Color.red);
                  g.drawLine(5, 30, 50, 70);
          }  
    }
    merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  3. #3
    Provisoirement toléré
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Points : 76
    Points
    76
    Par défaut
    voila je veux ajouter paint sur JPanel1 mais je n'ai aucune idée

  4. #4
    Membre régulier Avatar de elghadi_mohamed
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2005
    Messages : 227
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par minooo Voir le message
    bonsoir
    j'ai un problème , je n'arrive pas à dessiner sur jpanel je ne sais pascomment l'ajouter le paint sur jpanel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
     
    import javax.swing.*;
    import java.awt.*;
    import java.io.*;
    import java.lang.*; 
    public class test  extends JFrame        {
      JPanel jPanel1 = new JPanel();
      public test() {
        setTitle(" fenetre ");
        this.setResizable(false);
        this.setSize(650, 650);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        try {
          jbInit();
        }
        catch(Exception e) {
          e.printStackTrace();
        }
     
      }
      private void jbInit() throws Exception {
        this.getContentPane().setLayout(null);
        jPanel1.setBounds(new Rectangle(0, 29, 487, 124));
        jPanel1.setLayout(null);
        this.getContentPane().add(jPanel1, null);
      }
     
     
      public static void main(String[] args) {
        test fenetre = new test();
        fenetre.setVisible(true);
      }
     
      public void paint(Graphics g)
          {
                  // Tracer une ligne rouge entre les points (x=5, y=30) et (x=50, y=70)
                  g.setColor(Color.red);
                  g.drawLine(5, 30, 50, 70);
          }  
    }
    merci d'avance
    tu peux creer une petite classe qui herite de JPanel
    tu l'appelle par exemple JPanel1
    et puis tu y redefini la methode paint avec les instructions que tu a ecris dans ton code au niveau de la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     public void paint(Graphics g)
    demonstration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    class JPanel1 extends JPanel{
    // attributs
     
    //constructeur
    public JPanel1(/* ... les parametres .... */){
     
    }
     
    // la methode paint
    public void paint(Graphics g)
          {
                  // Tracer une ligne rouge entre les points (x=5, y=30) et (x=50, y=70)
                  g.setColor(Color.red);
                  g.drawLine(5, 30, 50, 70);
          }  
    }
     
     
    }
    par la suite dans ta classe JFrame tu peux ecrire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JPanel1 jPanel1 = new JPanel1();
    ok
    Soit A un succès dans la vie. Alors A = x + y + z, où x = travailler, y = s'amuser, z = se taire.

  5. #5
    Provisoirement toléré
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Points : 76
    Points
    76
    Par défaut
    bonjour voila ce que j'ai fais mais le malheur que le bouton jButton2 n'est pas afficher sur la fenetre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
     
    import javax.swing.*;
    import java.awt.*;
    import java.io.*;
    import java.lang.*;
    public class test  extends JFrame        {
      JPanel pan = new JPanel();
      JPanel jPanel2 = new JPanel();
      JButton jButton1 = new JButton();
      JButton jButton2 = new JButton();
      public test() {
        setTitle(" fenetre ");
        this.setResizable(false);
        this.setSize(650, 650);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        try {
          jbInit();
        }
        catch(Exception e) {
          e.printStackTrace();
        }
     
      }
      private void jbInit() throws Exception {
        this.getContentPane().setLayout(null);
     
        JPanel1 pan = new JPanel1();
        pan.setBounds(new Rectangle(0, 29, 487, 93));
        pan.setLayout(null);
     
     
     
        jPanel2.setBounds(new Rectangle(48, 264, 386, 45));
        jButton1.setText("jButton1");
        jButton2.setBounds(new Rectangle(287, 37, 71, 23));
        jButton2.setText("jButton2");
        this.getContentPane().add(pan, null);
        pan.add(jButton2, null);
        this.getContentPane().add(jPanel2, null);
        jPanel2.add(jButton1, null);
      }
     
     
      public static void main(String[] args) {
        test fenetre = new test();
        fenetre.setVisible(true);
      }
     
     
     
     
     
      class JPanel1 extends JPanel{
     
      public JPanel1( ){
     
      }
     
    // la methode paint
      public void paint(Graphics g)
            {
                    // Tracer une ligne rouge entre les points (x=5, y=30) et (x=50, y=70)
                    g.setColor(Color.red);
                    g.drawLine(5, 30, 50, 70);
            }
      }
     
     
     
     
     
    }

  6. #6
    Membre expérimenté Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Points : 1 608
    Points
    1 608
    Par défaut
    Il faut redéfinir la méthode paintComponent() et non paint() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     public void paintComponent(Graphics g) {
      super.paintComponent(g);
      g.setColor(Color.red);
      g.drawLine(5, 30, 50, 70);
    }

  7. #7
    Provisoirement toléré
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Points : 76
    Points
    76
    Par défaut
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 15/05/2013, 18h42
  2. SetBound sur Jpanel et ajout d'un Bouton
    Par BoBy9 dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 01/06/2008, 11h44
  3. Réponses: 6
    Dernier message: 18/04/2005, 21h12
  4. Problème d'ajout d'imprimante sur LPT1
    Par arnaud_verlaine dans le forum Périphériques
    Réponses: 10
    Dernier message: 15/03/2005, 22h23
  5. ajout de colonnes sur une selection
    Par DaxTaz dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 05/08/2004, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo