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

 Java Discussion :

Aide pour codage java


Sujet :

Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2011
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 5
    Points : 7
    Points
    7
    Par défaut Aide pour codage java
    Bonjour voila je débute en Java je me débrouille comme je peut avec différent tuto sur le net mais la je bloque.

    Voila j'ai un code :

    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
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    package barchartdemo;
     
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
     
      public class SimpleBarChart extends JPanel {
      private double[] value;
      private String[] languages;
      private String title;
     
      public SimpleBarChart(double[] val, String[] lang, String t) {
        languages = lang;
        value = val;
        title = t;
      }
     
     
      public void paintComponent(Graphics graphics) {
        super.paintComponent(graphics);
        if (value == null || value.length == 0)
          return;
        double minValue = 0;
        double maxValue = 0;
        for (int i = 0; i < value.length; i++) {
          if (minValue > value[i])
            minValue = value[i];
          if (maxValue < value[i])
            maxValue = value[i];
        }
        Dimension dim = getSize();
        int clientWidth = dim.width;
        int clientHeight = dim.height;
        int barWidth = clientWidth / value.length;
        Font titleFont = new Font("Book Antiqua", Font.BOLD, 15);
        FontMetrics titleFontMetrics = graphics.getFontMetrics(titleFont);
        Font labelFont = new Font("Book Antiqua", Font.PLAIN, 10);
        FontMetrics labelFontMetrics = graphics.getFontMetrics(labelFont);
        int titleWidth = titleFontMetrics.stringWidth(title);
        int q = titleFontMetrics.getAscent();
        int p = (clientWidth - titleWidth) / 2;
        graphics.setFont(titleFont);
        graphics.drawString(title, p, q);
        int top = titleFontMetrics.getHeight();
        int bottom = labelFontMetrics.getHeight();
        if (maxValue == minValue)
          return;
        double scale = (clientHeight - top - bottom) / (maxValue - minValue);
       q = clientHeight - labelFontMetrics.getDescent();
        graphics.setFont(labelFont);
     
        for (int j = 0; j < value.length; j++) {
          int valueP = j * barWidth + 1;
          int valueQ = top;
          int height = (int) (value[j] * scale);
          if (value[j] >= 0)
            valueQ += (int) ((maxValue - value[j]) * scale);
          else {
            valueQ += (int) (maxValue * scale);
            height = -height;
          }
     
          graphics.setColor(Color.black);
          graphics.fillRect(valueP, valueQ, barWidth - 2, height);
          graphics.setColor(Color.red);
          graphics.drawRect(valueP, valueQ, barWidth - 2, height);
          int labelWidth = labelFontMetrics.stringWidth(languages[j]);
          p = j * barWidth + (barWidth - labelWidth) / 2;
          graphics.drawString(languages[j], p, q);
        }
      }
     
     
     
     
       public static void main(String[] argv) {
        JFrame frame = new JFrame();
        frame.setSize(350, 300);
        double[] value= new double[5];
        String[] languages = new String[5];
        value[0] = 1;
        languages[0] = "Visual Basic";
     
        value[1] = 6;
        languages[1] = "PHP";
     
        value[2] = 3;
        languages[2] = "C++";
     
    	value[3] = 4;
        languages[3] = "C";
     
        value[4] = 5;
        languages[4] = "Java";
     
        frame.getContentPane().add(new SimpleBarChart(value, languages, "Programming Languages"));
     
        WindowListener winListener = new WindowAdapter() {
          public void windowClosing(WindowEvent event) {
            System.exit(0);
          }
        };
        frame.addWindowListener(winListener);
        frame.setVisible(true);
      }
     
     
     
    }
    Et je voudrais réaliser ceci dans un JPanel a l'aide de Netbeans.

    J'ai donc créer mon panel, et j'arrive avec se code la :

    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
    package barchartdemo;
     
    import javax.swing.*;
    import java.awt.event.*;
    import barchartdemo.SimpleBarChart;
     
    /**
     *
     * @author Benjamin
     */
     
     
    public class maFenetre extends javax.swing.JFrame {
        private static final long serialVersionUID = 1L;
     
     
        /** Creates new form maFenetre */
        public maFenetre() {
            initComponents();
     
        JFrame mafenetre = new JFrame();
        mafenetre.setSize(350, 300);
        double[] value= new double[5];
        String[] languages = new String[5];
        value[0] = 1;
        languages[0] = "Visual Basic";
     
        value[1] = 6;
        languages[1] = "PHP";
     
        value[2] = 3;
        languages[2] = "C++";
     
        value[3] = 4;
        languages[3] = "C";
     
        value[4] = 5;
        languages[4] = "Java";
     
        mafenetre.getContentPane().add(new SimpleBarChart(value, languages, "Programming Languages"));
     
        WindowListener winListener = new WindowAdapter() {
                @Override
          public void windowClosing(WindowEvent event) {
            System.exit(0);
          }
        };
        mafenetre.addWindowListener(winListener);
        mafenetre.setVisible(true);
     
     }
    Mais bon voila je sait pas trop se qui va pas si vous pouviez aider un pauvre débutant

    Cordialement.

  2. #2
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    Bonjour,

    1) Pense à mettre des majuscules pour les NomDeClasse.
    2) MaFenetre hérite de JFrame, Donc MaFenetre est une fenêtre. Pas la peine d'en recréer une autre dans le constructeur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JFrame mafenetre = new JFrame();//Inutile
    Si tu veux modifier les paramètres de MaFenetre il faut utiliser this.
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.setSize(350,300);
    //Ou encore
    this.setVisible(true);
    3) Le programme ne va pas se lancer s'il n'a pas de lanceur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public static void main(String[] args) {
            new MaFenetre();
    }
    Avec ça, tout devrait fonctionner.

    Bonne chance
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2011
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Merci pour ton aide tous marche à merveille.

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

Discussions similaires

  1. Aide pour codage huffman
    Par Yoshiiki dans le forum C
    Réponses: 1
    Dernier message: 28/11/2010, 10h18
  2. aide pour exception java.lang.NoSuchMethodError
    Par tare9 dans le forum Spring
    Réponses: 8
    Dernier message: 18/05/2010, 16h21
  3. [XHTML 1.0] Aide pour codage Design
    Par Steen dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 21/12/2008, 15h03
  4. besoin d'aide pour codage en java
    Par pat_gem dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 06/05/2008, 20h30
  5. Aide pour QCM java
    Par LinuxUser dans le forum Langage
    Réponses: 43
    Dernier message: 06/06/2007, 09h20

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