Probleme avec un JButton JAVA
Ettrick
-
arth Messages postés 9374 Date d'inscription Statut Contributeur Dernière intervention -
arth Messages postés 9374 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je fait presentement une interface graphique qui va ressembler a une lotterie, j'utilise Java et je fait le tout dans un JFrame, parcontre je semble avoir de la miser a trouver comment actioner mes JButtons,
j'ai mit en gras et souligner la partie donc j'aurai besoin d'aide. se que j'ai besoin c'est quand je vais cliquer sur le boutton "1" il va avoir un 1 qui va aparaitre dans le JTextArea.
et aussi si possible de m'expliquer le comment?
Merci beaucoup,
Eric
je fait presentement une interface graphique qui va ressembler a une lotterie, j'utilise Java et je fait le tout dans un JFrame, parcontre je semble avoir de la miser a trouver comment actioner mes JButtons,
j'ai mit en gras et souligner la partie donc j'aurai besoin d'aide. se que j'ai besoin c'est quand je vais cliquer sur le boutton "1" il va avoir un 1 qui va aparaitre dans le JTextArea.
et aussi si possible de m'expliquer le comment?
Merci beaucoup,
Eric
import java.awt.*; import java.awt.event.*; import java.util.List; import java.awt.Image; import java.awt.Toolkit; import javax.swing.*; public class Selection extends JFrame implements ActionListener { private JButton jbtn649[] = null; private JCheckBox jcbCroisant = new JCheckBox ("Ordre Croisant", false); private JCheckBox jcbSélectioner = new JCheckBox ("Order Sélectioner", false); private JButton jbtnErase = new JButton("Effacé"); private JTextArea jta = new JTextArea(); //===================================================================================== public Selection(int n) //===================================================================================== { super ("Séléction , Eric Dumouchel"); if ( n < 1) n = 49; initialiserGUI(n); enregistrerListners(); } //===================================================================================== private void initialiserGUI(int n) //===================================================================================== { //Creation des composant supplementaires JPanel jpnlContour = (JPanel) this.getContentPane(); JPanel jpnlCenter = new JPanel(); jbtn649 = new JButton[n]; for( int i = 0; i<jbtn649.length ; i++) { jbtn649[i] = new JButton(String.valueOf(i+1)); } //Choix de la disposition jpnlCenter.setLayout(new GridLayout(7,7)); //Ajout des composant this.add(jpnlCenter , "Center"); for( int i=0; i <n ; i++) { jpnlCenter.add( jbtn649[i]); } this.add (jta,"South"); this.add(jbtnErase,"North"); this.add(jcbCroisant,"East"); this.add(jcbSélectioner,"West"); //Initialisation supplementaires jpnlContour.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)); jta.setBorder(BorderFactory.createTitledBorder("")); jta.setEditable( false ); this.pack(); this.setDefaultCloseOperation(EXIT_ON_CLOSE); // ===================================================================================== //j'ai adder un icon dans le cote gauche! Image im = Toolkit.getDefaultToolkit().getImage("heart2.png"); this.setIconImage(im); // ===================================================================================== this.setLocationRelativeTo(null); this.setVisible(true); } //===================================================================================== private void enregistrerListners() //===================================================================================== { jbtnErase.addActionListener(this); jbtn649[49].addActionListener(this); } // ===================================================================================== public void actionPerformed( ActionEvent ae ) // ===================================================================================== { Object src = ae.getSource(); if( src == jbtnErase ) { jta.setText(""); } } // ===================================================================================== public void actionPerformed1( ActionEvent ae ) // ===================================================================================== { Object src = ae.getSource(); if( src == jbtn649[49] ) { for( int i = 0; i<jbtn649.length ; i++) { jta.setText("String.valueOf(jbtn649[i]+1)"); } } } //===================================================================================== public static void main(String[] args) //===================================================================================== { JFrame.setDefaultLookAndFeelDecorated(true); new Selection(49); } }
A voir également:
- Probleme avec un JButton JAVA
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
4 réponses
Tiens voilà un code qui marche un peu mieux ^^ :
J'ai mis 2/3 modifs par-ci par-là parce que ça provoquait des erreurs au lancement, type tableau[49] hors le dernier élément d'un tableau de 49 éléments est tableau[48] puisque la notation va de 0 à 48.
import java.awt.*; import java.awt.event.*; import java.util.List; import java.awt.Image; import java.awt.Toolkit; import javax.swing.*; public class pipo extends JFrame implements ActionListener { private JButton jbtn649[] = null; private JCheckBox jcbCroisant = new JCheckBox ("Ordre Croisant", false); private JCheckBox jcbSélectioner = new JCheckBox ("Order Sélectioner", false); private JButton jbtnErase = new JButton("Effacé"); private JTextArea jta = new JTextArea(); //===================================================================================== public pipo(int n) //===================================================================================== { super ("Séléction , Eric Dumouchel"); if ( n < 1) n = 49; initialiserGUI(n); enregistrerListners(); } //===================================================================================== private void initialiserGUI(int n) //===================================================================================== { //Creation des composant supplementaires JPanel jpnlContour = (JPanel) this.getContentPane(); JPanel jpnlCenter = new JPanel(); jbtn649 = new JButton[n]; for( int i = 0; i<jbtn649.length ; i++) { jbtn649[i] = new JButton(String.valueOf(i+1)); } //Choix de la disposition jpnlCenter.setLayout(new GridLayout(7,7)); //Ajout des composant this.add(jpnlCenter , "Center"); for( int i=0; i <n ; i++) { jpnlCenter.add( jbtn649[i]); } this.add (jta,"South"); this.add(jbtnErase,"North"); this.add(jcbCroisant,"East"); this.add(jcbSélectioner,"West"); //Initialisation supplementaires jpnlContour.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)); jta.setBorder(BorderFactory.createTitledBorder("")); jta.setEditable( false ); this.pack(); this.setDefaultCloseOperation(EXIT_ON_CLOSE); // ===================================================================================== //j'ai adder un icon dans le cote gauche! Image im = Toolkit.getDefaultToolkit().getImage("heart2.png"); this.setIconImage(im); // ===================================================================================== this.setLocationRelativeTo(null); this.setVisible(true); } //===================================================================================== private void enregistrerListners() //===================================================================================== { jbtnErase.addActionListener(this); for(int i=0;i<jbtn649.length;i++)jbtn649[i].addActionListener(this); } // ===================================================================================== public void actionPerformed( ActionEvent ae ) // ===================================================================================== { Object src = ae.getSource(); if( src == jbtnErase ) { jta.setText(""); } for( int i = 0; i<jbtn649.length ; i++) { if( src == jbtn649[i] )jta.setText(String.valueOf(jbtn649[i].getText()+1)); } } //===================================================================================== public static void main(String[] args) //===================================================================================== { JFrame.setDefaultLookAndFeelDecorated(true); new pipo(49); } }
J'ai mis 2/3 modifs par-ci par-là parce que ça provoquait des erreurs au lancement, type tableau[49] hors le dernier élément d'un tableau de 49 éléments est tableau[48] puisque la notation va de 0 à 48.
Hello,
Normalement dans ton cas pour rendre ton JButton cliquable avec action, il te faut mettre le code suivant :
bouton.addActionListener(this);
Normalement dans ton cas pour rendre ton JButton cliquable avec action, il te faut mettre le code suivant :
bouton.addActionListener(this);
salut, ouais j'ai se code deja
se que j'ai de besoin s'est quand je run mon application quand je clique sur le boutton 3 sa ecrit 3 dans le JTextArea,
Merci
Eric
private void enregistrerListners()
//=====================================================================================
{
jbtnErase.addActionListener(this);
jbtn649[49].addActionListener(this);
}
se que j'ai de besoin s'est quand je run mon application quand je clique sur le boutton 3 sa ecrit 3 dans le JTextArea,
Merci
Eric
M'est d'avis que ton souci vient du actionPerformed et du actionPerformed1, pourquoi en avoir mis 2?
Tu peux très bien gérer tous tes Event dans un seul. Donc :
Tu peux très bien gérer tous tes Event dans un seul. Donc :
private void enregistrerListners() { jbtnErase.addActionListener(this); jbtn649[49].addActionListener(this); } public void actionPerformed( ActionEvent ae ) { Object src = ae.getSource(); if( src == jbtnErase ) { jta.setText(""); } if( src == jbtn649[49] ) { for( int i = 0; i<jbtn649.length ; i++) { jta.setText("String.valueOf(jbtn649[i]+1)"); } } }
ahhh merci beaucoup. je pensait pas que je pouvais faire sa,
en se moment, j'ai ceci
https://imageshack.com/
j'aimerai que quand je clique sur dison le boutton "24", que plus bas dans le JTextArea sa l'ecrit le chiffre 24, j'ai beaucoup de miser avec sa :(
Merci,
Eric
en se moment, j'ai ceci
https://imageshack.com/
j'aimerai que quand je clique sur dison le boutton "24", que plus bas dans le JTextArea sa l'ecrit le chiffre 24, j'ai beaucoup de miser avec sa :(
Merci,
Eric
Hello,
Ton code est aussi restrictif : if( src == jbtn649[49] )
Donc ça ne marchera que si tu appuies sur 49.
Un code un peu moche ^^ , qu'il faut mettre à la place du "if( src == jbtn649[49] ) ...."
for( int i = 1; i<jbtn649.length+1 ; i++)
{
if( src == jbtn649[i] ) jta.setText(jbtn649[i].getText());
}
Ton code est aussi restrictif : if( src == jbtn649[49] )
Donc ça ne marchera que si tu appuies sur 49.
Un code un peu moche ^^ , qu'il faut mettre à la place du "if( src == jbtn649[49] ) ...."
for( int i = 1; i<jbtn649.length+1 ; i++)
{
if( src == jbtn649[i] ) jta.setText(jbtn649[i].getText());
}