[JAVA - Swing]
Résolu
Anthony
-
sandul Messages postés 3927 Date d'inscription Statut Membre Dernière intervention -
sandul Messages postés 3927 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j"ai un problème avec mon interface graphique en java.
Je souhaite créer un Jlabel qui contiendrait une valeur par défaut. Cette valeur peur être modifiée grace à un bouton ouvrant une InputDialog. En affichant le résultat dans la console, j'arrive bien a changé la variable mais le panel ne se change pas. Pourtant j'effectue bien un repaint.
Voici un apercu de mon code. Merci
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GUI extends JFrame{
public static JPanel Info;
public static JTextField boitePosition; // Zone de texte de la position
public static JButton BouttonIRmin;
public static int IRmin;
// Listener du boutton
public static class B1Listener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
// ouverture de la fenetre de Dialogue
System.out.println("avant je passe "+GUI.IRmin);
int tailleIR=0;
try {
tailleIR=Integer.parseInt(JOptionPane.showInputDialog(null,"Taille IR min :","",JOptionPane.QUESTION_MESSAGE));
}
catch(java.lang.NumberFormatException ex) {
Toolkit.getDefaultToolkit().beep();
JOptionPane.showMessageDialog(null,"Veuillez entrer un nombre valide","Erreur de l'application",JOptionPane.ERROR_MESSAGE);
System.exit(-1);
}
GUI.IRmin=tailleIR; // changement de la variable
System.out.println("apres je passe "+GUI.IRmin);
GUI.Info.repaint(); // repaint
}
}
// Classe panel
public class JPanelInfo extends JPanel{
public JPanelInfo(){
JLabel l=new JLabel("IR min "+IRmin);
l.setBounds(10,20,100,17);
this.add(l);
}
}
public GUI(){
// Parametre de la frame
this.setTitle("Detection des small RNA");
this.setSize(600,400);
this.setLocation(100,50);
this.setLayout(null);
// création de la frame
this.Info = new JPanelInfo();
this.Info.setBounds(0,0,80,100);
this.getContentPane().add(Info);
// Ajout du boutton
this.BouttonIRmin = new JButton(" Modifier ");
this.BouttonIRmin.setBounds(200,5,100,25);
this.BouttonIRmin.addActionListener(new B1Listener());
this.getContentPane().add(this.BouttonIRmin);
/*
JLabel l=new JLabel("IR min bis "+this.IRmin);
l.setBounds(200,200,100,17);
this.add(l);
*/
this.setVisible(true);
}
}
j"ai un problème avec mon interface graphique en java.
Je souhaite créer un Jlabel qui contiendrait une valeur par défaut. Cette valeur peur être modifiée grace à un bouton ouvrant une InputDialog. En affichant le résultat dans la console, j'arrive bien a changé la variable mais le panel ne se change pas. Pourtant j'effectue bien un repaint.
Voici un apercu de mon code. Merci
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GUI extends JFrame{
public static JPanel Info;
public static JTextField boitePosition; // Zone de texte de la position
public static JButton BouttonIRmin;
public static int IRmin;
// Listener du boutton
public static class B1Listener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
// ouverture de la fenetre de Dialogue
System.out.println("avant je passe "+GUI.IRmin);
int tailleIR=0;
try {
tailleIR=Integer.parseInt(JOptionPane.showInputDialog(null,"Taille IR min :","",JOptionPane.QUESTION_MESSAGE));
}
catch(java.lang.NumberFormatException ex) {
Toolkit.getDefaultToolkit().beep();
JOptionPane.showMessageDialog(null,"Veuillez entrer un nombre valide","Erreur de l'application",JOptionPane.ERROR_MESSAGE);
System.exit(-1);
}
GUI.IRmin=tailleIR; // changement de la variable
System.out.println("apres je passe "+GUI.IRmin);
GUI.Info.repaint(); // repaint
}
}
// Classe panel
public class JPanelInfo extends JPanel{
public JPanelInfo(){
JLabel l=new JLabel("IR min "+IRmin);
l.setBounds(10,20,100,17);
this.add(l);
}
}
public GUI(){
// Parametre de la frame
this.setTitle("Detection des small RNA");
this.setSize(600,400);
this.setLocation(100,50);
this.setLayout(null);
// création de la frame
this.Info = new JPanelInfo();
this.Info.setBounds(0,0,80,100);
this.getContentPane().add(Info);
// Ajout du boutton
this.BouttonIRmin = new JButton(" Modifier ");
this.BouttonIRmin.setBounds(200,5,100,25);
this.BouttonIRmin.addActionListener(new B1Listener());
this.getContentPane().add(this.BouttonIRmin);
/*
JLabel l=new JLabel("IR min bis "+this.IRmin);
l.setBounds(200,200,100,17);
this.add(l);
*/
this.setVisible(true);
}
}
A voir également:
- [JAVA - Swing]
- 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
Ah bah forcément si tu fais pas le Info.setText(""+(char)tailleIR); ca morche po, enfin je suppose a première vue que c'est ce qui te manquait :)
bonjour
j'ai besoin d'un editeur pour creer une classe visuel (swing)
merci d'avance
j'ai besoin d'un editeur pour creer une classe visuel (swing)
merci d'avance
Salut,
Eclipse + VE, NetBeans + Matisse, ...
https://www.eclipse.org/downloads/ pour Eclipse, http://download.eclipse.org/tools/ve/downloads/ pour le Visual Editor.
hth,
++
Eclipse + VE, NetBeans + Matisse, ...
https://www.eclipse.org/downloads/ pour Eclipse, http://download.eclipse.org/tools/ve/downloads/ pour le Visual Editor.
hth,
++