[JAVA - Swing]

Résolu/Fermé
Anthony - 19 sept. 2006 à 11:28
sandul Messages postés 3924 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 8 octobre 2010 - 30 mai 2008 à 17:08
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);

}

}
A voir également:

4 réponses

ca marche pb resolu
0
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
19 sept. 2006 à 18:37
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 :)
0
choubaka Messages postés 39375 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 14 avril 2024 2 100
20 sept. 2006 à 07:28
salut

ce serait sympa pour les autres de donner la solution du problème ..

0
lamifr Messages postés 21 Date d'inscription mercredi 19 mars 2008 Statut Membre Dernière intervention 19 août 2010
30 mai 2008 à 16:03
bonjour
j'ai besoin d'un editeur pour creer une classe visuel (swing)
merci d'avance
0
sandul Messages postés 3924 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 8 octobre 2010 722
30 mai 2008 à 17:08
Salut,

Eclipse + VE, NetBeans + Matisse, ...

https://www.eclipse.org/downloads/ pour Eclipse, http://download.eclipse.org/tools/ve/downloads/ pour le Visual Editor.

hth,
++
0