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 :

[Urgent!][Applet] Créer une table


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Paulinho
    Invité(e)
    Par défaut [Urgent!][Applet] Créer une table
    J'ai la classe Ldc:
    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
    import java.applet.*; 
    import java.awt.event.*; 
     
    import javax.swing.Box;
    import javax.swing.JLabel;
    import javax.swing.JTextField;
     
     
    public class Ldc extends Applet implements ActionListener{ 
     
    	/**
             * 
             */
    	private static final long serialVersionUID = 1L;
     
    	public void init() 
        { 
        super.init();
     
        Box jogo1=Box.createHorizontalBox();
     
        String jogo1club1;
    	jogo1club1 = getParameter("club2");
        BoutonClub club2=new BoutonClub(jogo1club1); 
        JTextField tjogo1club1=new JTextField(String.valueOf(club2.getClickCount())); 
        club2.addActionListener(this); 
     
        String jogo1club2;
    	jogo1club2 = getParameter("club1");
        BoutonClub club1=new BoutonClub(jogo1club2); 
        JTextField tjogo1club2=new JTextField(String.valueOf(club1.getClickCount())); 
        club1.addActionListener(this);
     
        JLabel separador1=new JLabel(":"); 
     
        jogo1.add(club2); 
        jogo1.add(club1); 
     
        jogo1.add(tjogo1club1); 
        jogo1.add(separador1); 
        jogo1.add(tjogo1club2);
     
        add(jogo1);
     
        club2.associerJTextField(tjogo1club1); 
        club1.associerJTextField(tjogo1club2); 
     
     
        Box jogo2=Box.createHorizontalBox(); 
     
        String jogo2club1;
    	jogo2club1 = getParameter("club3");
        BoutonClub club3=new BoutonClub(jogo2club1); 
        JTextField tjogo2club1=new JTextField(String.valueOf(club3.getClickCount())); 
        club3.addActionListener(this); 
     
        String jogo2club2;
    	jogo2club2 = getParameter("club4");
        BoutonClub club4=new BoutonClub(jogo2club2); 
        JTextField tjogo2club2=new JTextField(String.valueOf(club4.getClickCount())); 
        club4.addActionListener(this);
     
        JLabel separador2=new JLabel(":"); 
     
        jogo2.add(club3); 
        jogo2.add(club4); 
     
        jogo2.add(tjogo2club1); 
        jogo2.add(separador2); 
        jogo2.add(tjogo2club2);
     
        add(jogo2);
     
        club3.associerJTextField(tjogo2club1); 
        club4.associerJTextField(tjogo2club2); 
        } 
     
     
      public void actionPerformed(ActionEvent e) 
         {      
          if(e.getSource() instanceof BoutonClub) 
            { 
             ((BoutonClub)e.getSource()).incClickCount();
            }
          if(e.getSource() instanceof PointsClub)
            {
              ((PointsClub)e.getSource()).incPointTable();
             } 
          }
     
      }
    la classe BoutonClub
    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
    import javax.swing.JButton;
    import javax.swing.JTextField;
     
    public class BoutonClub extends JButton 
    { 
      /**
             * 
             */
      private static final long serialVersionUID = 1L;
      private JTextField fieldAffichage;
      private int clickCount;
     
      public BoutonClub(String label) 
     { 
     super(label); 
     this.clickCount=0;
     } 
     
    public void incClickCount() 
     { 
     clickCount++; 
     this.fieldAffichage.setText(String.valueOf(clickCount)); 
     } 
     
    public int getClickCount() 
     { 
     return clickCount; 
     } 
     
    public void associerJTextField(JTextField textField) 
    { 
    this.fieldAffichage=textField; 
    }
    }
    et la classe PointsClub
    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
    import javax.swing.JTable;
    import javax.swing.JTextField;
    import javax.swing.table.TableModel;
     
    public class PointsClub extends JTable {
     
    	/**
             * 
             */
    	private static final long serialVersionUID = 1L;
    	private JTextField fieldAffichage;
    	private int pointTable;
     
    	public PointsClub(TableModel label){
     
    		super(label); 
    		this.pointTable=0;
    	}
     
    	public void incPointTable(){
     
    		pointTable=pointTable+3;
    		this.fieldAffichage.setText(String.valueOf(pointTable));
    	}
    	public int getPointTable() {
     
    		return pointTable;
    	}
    }
    Cette dernière c'est pour construire une table comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    1. Inter Milão 13 
    2. Glasgow Rangers 7 
    3. Artmedia 6 
    4. FC Porto 5
    l'applet est lié avec une HTML comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <applet code="Ldc.class" width=500 height=500> 
    <param name="club1" value ="Inter Milão"> 
    <param name="pontos1" value="12"> 
    <param name="club2" value ="Glasgow Rangers"> 
    <param name="pontos2" value="6"> 
    <param name="club3" value ="Artmedia"> 
    <param name="pontos3" value="5"> 
    <param name="club4" value ="FC Porto"> 
    <param name="pontos4" value="4"> 
    <param name="jogo1club1" value="Glasgow Rangers"> 
    <param name="jogo1club2" value="Inter Milão"> 
    <param name="jogo2club1" value="Artmedia"> 
    <param name="jogo2club2" value="FC Porto"> 
    <\applet>
    Quelqu'un sait le problème de ma classe PointsClub?

    J'ai écrit urgent dans le sujet c'est parce que je doit envoyer aujourd'hui avant minuit le code au prof de Java et c'est "seulement" ça qui me manque.

    Merci d'avance!

  2. #2
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Est-ce nécessair d'utiliser une JTable?
    Tu pourrais faire ça très simplement avec de JLabel...

  3. #3
    Paulinho
    Invité(e)
    Par défaut
    Non, c'est à volonté. J'ai utilisé JTable parce que je lu dans un tutoriel sur ça...

  4. #4
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    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
     
    import javax.swing.*;
     
     
    public class PointsClub extends JLabel {
     
       /**
        *
        */
       private String nomClub;
       private int pointClubs;
     
       public PointsClub(String nomClub){
     
          super(nomClub+" 0");
          this.pointClubs=0;
          this.nomClub=nomClub;
       }
     
       public void incPointTable(){
     
          pointClubs+=3;
         setText(nomClub+" : "+pointClubs);
       }
     
       public int getPointClub() {
     
          return pointClubs;
       }
    }
    Si je te propose ça c'est que j'ai encore jamais utiliser de JTable et pour régler ton problème avant minuit(dans 50 min) j'ai pas le temps de m'y mettre...

  5. #5
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Par contre j'ai pas vu où tu ajoutais ta JTable dans ton programme, ni même où elle était créée...

  6. #6
    Paulinho
    Invité(e)
    Par défaut
    J'ai fair cela dans Ldc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if(e.getSource() instanceof PointsClub)
            {
              ((PointsClub)e.getSource()).incPointTable();
             }
    Je fait ce que tu as dit mais dans l'applet la table n'apparait pas.

  7. #7
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Ouais, mais là tu ne la créé pas ni l'ajoute dans ta fenêtre, tu te contente d'incrémenter le score. Si t'as fait que ça, normalement tu devrait même jamais passer par là. Qu'est-ce que tu veux que ton programme fasse exactement? à quel moment le nombre de point de l'équipe doit être incrémenté?

  8. #8
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Qui plus est pour passer dans cette méthode, il faudrait que tu ai fait un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pointClub1.addActionListener(this);
    or, c'est impossible car les JTable ne possède pas cette méthode, uniquement les bouton l'ont...

  9. #9
    Paulinho
    Invité(e)
    Par défaut
    Quand je clique dans un des boutons, le score doit s'incrementer dans l'équipe respectif. Exemple:
    club1:club2 0:0
    je clique sur club1 et je doit avoir club1:club2 1:0 et club1 - 3, club 2 -0;
    je clique sur club2 maintenant e tje doit avoir club1:club2 1:1 et club1 - 1, club2 - 1.

  10. #10
    Paulinho
    Invité(e)
    Par défaut
    Je fait ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    JTextField pointClub1 = new JTextField(String.valueOf(jogo1club1.getPointClub()));
    	pointClub1.addActionListener(this);
    mais getPointClub() ne supporte pas les Strings.

  11. #11
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public void init()
        { 
        ...//ton code existant
        PointsClub  pointClub1=new PointsClub ("Inter Milão");
        club1.associerPointClub(pointClub1);
        club1.setAdversaire(club2)
        ...
        jogo1.add(pointClub1);
        }
    et dans BoutonClub ajouter
    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
     
    private BoutonClub adversaire;
    private PointsClub  pointClub;
    public void setAdversaire (BoutonClub adversaire)
    {
    if(this.adversaire=null)
    {
    this.adversaire=adversaire;
    this.adversaire.setAdversaire(this);
    }
    }
     
    public void associerPointClub(PointsClub  pointClub )
    {
    this.pointClub = pointClub ;
    }
     
    public PointsClub  getPointClub()
    {
    return this.pointClub;
    }
     
    public void incClickCount()
     {
     clickCount++;
     this.fieldAffichage.setText(String.valueOf(clickCount));
     if(clickCount>adversaire.getClickCount())
       {
        this.pointClub.setPoints(3);
        adversaire.getPointClub().setPoints(0);
        }
    else if (clickCount==adversaire.getClickCount())
      {
      this.pointClub.setPoints(1);
      adversaire.getPointClub().setPoints(1);
      }
    else
      {
      this.pointClub.setPoints(0);
      adversaire.getPointClub().setPoints(3);
      }
     }
    Bon on peut faire nettement mieux comme programmation, mais en si peu de temps je peux pas faire mieux.

  12. #12
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Ah, évidemment, il faut encore ajouter dans la classe PointsClub
    la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void setPoints(int nbPoints)
    {
    this.pointClubs=nbPoints;
    }
    mais bon c'est logique..

  13. #13
    Paulinho
    Invité(e)
    Par défaut
    Les points des équipes ne bougent pas.

    Je fait ceci dans Ldc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    PointsClub  pointClub1=new PointsClub ("jogo1club1"); 
        club2.associerPointClub(pointClub1); 
        club1.setAdversaire(club2); 
        PointsClub  pointClub2=new PointsClub ("jogo1club2"); 
        club1.associerPointClub(pointClub2); 
        PointsClub  pointClub3=new PointsClub ("jogo2club1"); 
        club3.associerPointClub(pointClub3); 
        PointsClub  pointClub4=new PointsClub ("jogo2club2"); 
        club4.associerPointClub(pointClub4); 
        jogo1.add(pointClub1);
        jogo1.add(pointClub2);
        jogo2.add(pointClub3);
        jogo2.add(pointClub4);

  14. #14
    Membre expérimenté Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Par défaut
    Ah, ouais, sorry, j'ai oublié la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setText(nomClub+" : "+pointClubs);
    dans la méthode setPoints(int nbPoints) de la classe PointsClub . En même temps, à cette heure je peux plus être irréprochable...

  15. #15
    Paulinho
    Invité(e)
    Par défaut
    Merci beaucoup!! Tu est super même à cette heure là. Précision: ici au Portugal sont 23:19, moins une heure.

    Bonne soirée et encore merci pour ton aide précieuse!!!

Discussions similaires

  1. créer une table de folder
    Par bibifinal dans le forum MFC
    Réponses: 2
    Dernier message: 25/02/2005, 14h24
  2. Créer une table en VBA ?
    Par nicburger dans le forum Access
    Réponses: 11
    Dernier message: 16/02/2005, 15h15
  3. Réponses: 17
    Dernier message: 03/12/2004, 14h33
  4. Comment créer une Table dans 1 Bdd ACCESS avec Builder??
    Par makandja dans le forum C++Builder
    Réponses: 6
    Dernier message: 17/03/2004, 20h21

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