Rechercher : dans
Par :

Java.swing

Dernière réponse le 18 jui 2008 à 10:12:44 thomason, le 18 jui 2008 à 09:33:36 
 Signaler ce message aux modérateurs

Bonjour,
j'ai un bouton et un textfield en java.swing: le problème est que je n'arrive pas à
effacer le contenu du textfield avec un click sur le bouton.
svp je veux la syntaxe en java.mon bouton se nomme "bot" et mon textfield "text".
merci....

Configuration: Windows XP
Firefox 2.0.0.16

Meilleures réponses pour « java.swing » dans :
[Firefox] plugin Java Jre de Sun VoirA) Les différentes variantes Java chez Sun B) Installation sous Mandriva Limited Edition 2005 ETAPE 1 ETAPE 2: Création du lien symbolique C) Installation sous debian lenny D) Installation sous ubuntu hardy heron A) Les différentes...
Installer Java sous Ubuntu VoirPar défaut, Firefox n'est pas fourni avec Java. Voici comment procéder pour l'installer: Ouvrez un terminal (Menu Applications > Accessoires > Terminal) et tapez: sudo aptitude install sun-java6-jre sun-java6-plugin ou sudo aptitude install ...
[Logiciel libre] Installation firefox 2.0+java+flash VoirInstallation firefox 2.0+java+flash en ligne de commande A. INTRODUCTION B. INSTALLATION FIREFOX 1. Création d'environnement 2. Téléchargement et vérification de la signature 3. Installation de Firefox 4. Démarrage de l'application C....
Télécharger Java Runtime Environment VoirJava Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des personnes dans le monde entier, de calculer les intérêts de votre prêt immobilier ou de visualiser des images en 3D. Ces...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...
Java - Les packages VoirIntroduction aux packages La programmation Java consiste à créer des classes. Or, étant donné qu'un programme est généralement développé par une équipe de programmeurs, c'est-à-dire plusieurs personnes, le fait de concaténer (mettre bout à bout)...

1

kij_82, le 18 jui 2008 à 09:35:51

Bonjour,

Est ce que tu as implémenté un écouteur d'évènement sur le bouton afin de déclencher une action lors d'un clic sur ce dernier ?
Est ce que tu as un référence sur le text en question au sein de la classe java qui s'occupe d'effectuer ce "control" ?

Le mieux si tu le peux est que tu poste le code en relation avec ton problème.

~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :)    ~

Répondre à kij_82

5

thomason, le 18 jui 2008 à 09:44:33

Voici le code je veux la syntaxe de la méthode


import javax.swing.*;
import java.awt.*;
public class bab extends JFrame {
JFrame fen =new JFrame();
JButton bot = new JButton("supprimez");
JTextField text = new JTextField();
JLabel label=new JLabel();

public bab(){
super();
fen.setLayout(null);
fen.setBounds(100,200,600,350);
bot.setBounds(250, 100,100 ,30 );
text.setBounds(200, 50, 150, 20);
label.setBounds(100,50,150,20);
label.setText("Votre nom svp : ");
fen.setVisible(true);
fen.add(bot);
fen.add(text);
fen.add(label);
fen.setDefaultCloseOperation(fen.EXIT_ON_CLOSE);
}

public static void main(String[]args){
new bab();
}
}

Répondre à thomason

6

tété, le 18 jui 2008 à 09:46:42

Non mais on a compris pas la peine de te répéter, mais si tu ne maitrises pas ce concept de base que sont les écouteurs ca ne servira à rien de te balancer le code déjà tout fait tu n'apprendras rien.

Répondre à tété

8

kij_82, le 18 jui 2008 à 09:56:32

Il faut que tu implémentes un écouteur d'action sur ton bouton:

bot.addActionListener( new ActionMouseListener(){
   public void mouseClicked(MouseEvent e){
       resetTextValue();
   }
}
);


Et la méthode 'resetTextValue' qui reset le texte :
public void resetTextValue (){
   text.value = "";
}


Incorporer dans ton code voilà ce que ça donnera :
import javax.swing.*;
import java.awt.*;
public class bab extends JFrame {
JFrame fen =new JFrame();
JButton bot = new JButton("supprimez");
JTextField text = new JTextField();
JLabel label=new JLabel();

public bab(){
super();
fen.setLayout(null);
fen.setBounds(100,200,600,350);
bot.setBounds(250, 100,100 ,30 );

bot.addMouseListener( new ActionMouseListener(){
   public void mouseClicked(MouseEvent e){
       resetTextValue();
   }
}
);

text.setBounds(200, 50, 150, 20);
label.setBounds(100,50,150,20);
label.setText("Votre nom svp : ");
fen.setVisible(true);
fen.add(bot);
fen.add(text);
fen.add(label);
fen.setDefaultCloseOperation(fen.EXIT_ON_CLOSE);
}

public static void main(String[]args){
new bab();
}

public void resetTextValue (){
   text.value = "";
}

}


Je n'ai pas testé donc je n'affirme pas que cela fonctionne, mais le principe est là. A toi de voir des tutoriels sur le net, tu tape 'Java tutoriel ActionListener' sur google et tu devrais trouver des choses

~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :)    ~

Répondre à kij_82

2

tété, le 18 jui 2008 à 09:36:24

Tu as un écouteur sur ton bouton ?
Dans ton écouteur d'évènement tu mets un truc du style
text.value=""
de mémoire hein j'ai pas fait de java depuis 6 mois.

Répondre à tété

3

thomason, le 18 jui 2008 à 09:40:54

Voici le code ce que je veux c'est la méthode qui me permet d'effectuer l'action



import javax.swing.*;
import java.awt.*;
public class bab extends JFrame {
JFrame fen =new JFrame();
JButton bot = new JButton("supprimez");
JTextField text = new JTextField();
JLabel label=new JLabel();

public bab(){
super();
fen.setLayout(null);
fen.setBounds(100,200,600,350);
bot.setBounds(250, 100,100 ,30 );
text.setBounds(200, 50, 150, 20);
label.setBounds(100,50,150,20);
label.setText("Votre nom svp : ");
fen.setVisible(true);
fen.add(bot);
fen.add(text);
fen.add(label);
fen.setDefaultCloseOperation(fen.EXIT_ON_CLOSE);
}

public static void main(String[]args){
new bab();
}
}

Répondre à thomason

4

tété, le 18 jui 2008 à 09:43:05

Ouais en gros t'as aucun écouteur donc tu ne sais pas faire une action avec un bouton c'est là qu'est le pb.

Répondre à tété

7

thomason, le 18 jui 2008 à 09:49:36

Tu peux m'aider?

Répondre à thomason

9

tété, le 18 jui 2008 à 09:59:45

Il faut que tu implémente dans ta la classe l'interface ActionListener pour commencer.
ce qui va donner
public class bab extends JFrame implements ActionListener {
...ton code

}

Ensuite dans ta classe il faut que tu dises à ton bouton sur quoi il va écouter (par exemple la fenêtre en cours)

donc tu fais

JButton bot = new JButton("supprimez");

bot.addActionListener(la tu mets l'objet sur lequel ton écouteur va agir) ;
exemple
bot.addActionListener(this); pour la fenêtre en cours

si tu mets que ce code tu verras normalement une erreure car l'implémentation de l'interface ActionListener nécessite la déclaration de la méthode actionPerformed.

donc dans ta classe tu rajoutes cette méthode ou tu vas traiter l'évènement lié au clic du bouton

public void actionPerformed(ActionEvent e) {
ton traitement
}

Voila en gros le raisonnement
Encore une fois c'est de mémoire donc peut être qu'il y a des erreurs mais au moins t'as là les principaux intervenants.

Répondre à tété

10

kij_82, le 18 jui 2008 à 10:07:15

Ce n'est pas exact, le fait d'implémenter l'interface ActionListener sur la classe elle-même va permettre d'effectuer des actions dès qu'une action de l'utilisateur sera faire sur la fenêtre (puisque la classe étends JFrame) elle même, mais pas forcément sur le bouton en question.

Mieux vaut implémenter un controleur d'action directement sur le bouton comme j'ai montré un peu plus haut.


EDIT: je n'ai rien dit, ta méthode peut fonctionner même si ce n'est pas la façon la plus "clair" pour moi de faire ça.

~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :)    ~

Répondre à kij_82

11

tété, le 18 jui 2008 à 10:08:34

Oui mais si tu mets bot.addActionListener(this); c'est bien sur le bouton que ca agit, non ?

Répondre à tété

12

kij_82, le 18 jui 2008 à 10:11:04

Oui oui. C'est juste que ajouter un écouteur qui déclenche la méthode actionPerformed attribuée à la fenêtre de l'application, je trouve ça un peu embrouillant, car si tu as beaucoup de contrôles dans ta fenêtre, il faudra faire une gestion de la source de l'émission de l'action afin de faire le traitement correct.

A chacun sa façon de gérer, ça va dépendre surtout de ce que veux faire la personne finalement :)

~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :)    ~

Répondre à kij_82

13

 tété, le 18 jui 2008 à 10:12:44

Oui je vois ce que tu veux dire, je faisais pas comme maintenant que tu le dis mais comme toi de façon plus ciblée.

Répondre à tété
Collection CommentÇaMarche.net