Probleme java urgent

Fermé
nico38000 Messages postés 8 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 11 avril 2005 - 20 mars 2005 à 22:14
choubaka Messages postés 39411 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 16 janvier 2025 - 21 mars 2005 à 23:37
Bonjour,
Ceci est mon premier post sur un forum donc j'espere bien m y prendre.
Voila je realise une action en java pour mon bts et j ai un souci qui me bloque(je precise je débute).
J'ai dans une fenetre une zone de saisie(JTextField) et un bouton "ok" et je ve que quand j'appuis sur ok, le programme recupere et stock dans une variable ce qu il y a dans la zone de texte.J'ai essayé avec getText() mon objet JTextField n est pas reconnu.
Je vous joint le code correspondant:

import javax.swing.JPanel;
import javax.swing.JTextField;

import java.awt.*;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.GridLayout;
import javax.swing.JPanel;
import javax.swing.*;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;

import javax.swing.*;
import java.awt.event.*;
import javax.swing.*;

import java.awt.*; //jdk1.02

public class temp extends supfenetre { //supfenetre classe créant une JFrame

public temp(){
setSize(300,200);
JPanel panneau = new JPanel();
GridLayout gl = new GridLayout(7, 1);
panneau.setLayout(gl);
setContentPane(panneau);
JTextField mpas = new JTextField ();
mpas.addActionListener(this);
panneau.add(mpas);
JButton b = new JButton("ok");
b.addActionListener(this);
panneau.add(b);

}

public void actionPerformed(ActionEvent evt) {

if (evt.getActionCommand().equals("ok"))
{
String op;
op=mpas.getText();
}

}
}

Si quelqu'un à la réponse cela m'aiderait beaucoup car je suis très pressé.
Merci d'avance.
A voir également:

3 réponses

Satrialien Messages postés 52 Date d'inscription mercredi 9 mars 2005 Statut Membre Dernière intervention 28 janvier 2006 13
21 mars 2005 à 10:25
Bonjour,

le problème vient de la visibilité de ta variable "mpas". Tu la déclares dans ton constructeur, donc elle n'est visible qu'à l'intérieur de celui-ci. C'est pour ça que ça ne compile pas. Déclares la en tant que variable de classe, et laisses l'initialisation dans le constructeur, et ça devrait marcher.

public class temp extends supfenetre
{
JTextField mpas = null;

public temp()
{
....
JTextField mpas = new JTextField ();
....
}

public void actionPerformed(ActionEvent evt)
{
if (evt.getActionCommand().equals("ok"))
{
String op;
op=mpas.getText();
System.out.println("Valeur recuperee : "+op);
}
}

}

Bon courage
Aurélien
0
nico38000 Messages postés 8 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 11 avril 2005 2
21 mars 2005 à 20:57
Merci beaucoup Aurélien j'ai compris et c est bon maintenant ca passe.

Je ne veux pas abuser mais j'ai encore une autre question, au cours de mon application je dois transformer une chaine en entier, ce que je fais avec cette méthode :

int i=Integer.valueOf(nom de ma TextField).intValue();

Et je voudrais savoir si il existe la meme chose pour retransformer mon entier en String pour l'afficher dans un JTextField.
Voila merci beaucoup.
Nico
0
choubaka Messages postés 39411 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 16 janvier 2025 2 104
21 mars 2005 à 21:18
salut

int monEntier = 23 ;

String monString = ""+ monEntier ;

JTextField monJTextField = new JTextField (monString);


0
nico38000 Messages postés 8 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 11 avril 2005 2
21 mars 2005 à 21:30
Merci pour l info, ca me debloque et permet d avancer plus vite!! :)
Nico
0
choubaka Messages postés 39411 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 16 janvier 2025 2 104
21 mars 2005 à 23:37
cool
0