alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 2008
-
11 nov. 2005 à 12:38
alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 2008
-
24 nov. 2005 à 09:52
bonjour,
j'essais d'utiliser "visual class" d'eclipse afin de creer l'interface de ma 1ere application (vous trouverez le code genere automatiquement ci-dessous).
je n'arrive pas a lancer la construction de la fenetre principale a partir de mon "main", pourriez-vous m'indiquer comment faire ?
luuuuudooooo
Messages postés64Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention 2 août 20064 11 nov. 2005 à 14:08
Rajoute le constructeur par défault :
public FenetreTest(){
//construction de ta fenêtre
this.getJDialog().setContentPane(this.getJContentPane());
//Affichage de ta fenêtre
jDialog.show();
}
et dans ton main tu fais simplement :
public static void main(String[] args) {
FenetreTest fenetre = new FenetreTest();
luuuuudooooo
Messages postés64Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention 2 août 20064 15 nov. 2005 à 09:15
Pour la question 1)
Si tu veux un événement sur ton JTextField :
Disons que tu as un JTextField suivant:
JTextField jtext = new JTextField();
pour ajouter un événement:
jtext.addCaretListener(new javax.swing.event.CaretListener() {
public void caretUpdate(javax.swing.event.CaretEvent e){
Change();
}
});
Change() est une fonction que tu crée toi même et qui sera appelé à chaque modification dans ton JTextField
Pour la question 2)
Disons que tu as un bouton
JButton button = new JButton("Réaliser l'estimation");
Pour ajouter un événement sur ce bouton (un listener si tu préfère) tu fais :
button.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e){
NomDeTaFonction();
}
});
NomDeTaFonction() est une fonction que tu crée toi même et dans laquelle tu fais le traitement qui doit être réalisé lorsque tu clique sur le bouton...
luuuuudooooo
Messages postés64Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention 2 août 20064 15 nov. 2005 à 14:31
En fait tu apprendras l'existence de ces listener au fur et à mesure que tu travailleras avec des composants...
Mais te spécifier quels sont tous les listener n'est pas simple car ils sont différents d'après le composant avec lequel tu travailles ... Par exemple, pour le JButton tu pourra trouver ActionListener(quand tu clique sur le bouton), addChangeListener(quand tu modifie le bouton), ...
Pour ton JTextField, tu retrouveras également ces 2 listener + plein d'autre encore...
Le CaretListener, lui, est appelé quand tu modifie la valeur de ton JTextField... Pour un JTextField tu peux encore trouver KeyListener, MouseListener ...
Tu pouvais très bien ajouter un ActionListener sur ton JTextField comme sur ton JButton... C'est le même principe...
Et tu en retrouveras encore plein pour les autres composants...
Si un jour tu veux voir les listener possible pour ton composant, regarde simplement les méthode offertes pour ce composant...
alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 200812 14 nov. 2005 à 19:28
1) certains de mes JTextField sont liés entre eux par des relations arithmetiques. donc, quand j'en modifie 1 les autres doivent s'ajuster automatiquement (un peu comme dans excel)
2) lancer des calculs lorsque l'utilisateur clique sur le bouton "Réaliser l'estimation"
alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 200812 15 nov. 2005 à 14:21
merci a toi luuuuudooooo !
toutes les indications que tu m'as donnees fonctionnent parfaitement mais pourrais-tu m'expliquer un peu plus en details les differences entre CaretListener et ActionListener ?
quand dois-je utiliser l'1 ou l'autre ?
existe t'il 1 ou +ieurs autres xxxListener et a quoi servent t'ils ?
alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 200812 24 nov. 2005 à 09:52
la mise en application de que tu m'as explique ce passe moyennement !
pour la phase d'ajustement des calculs a chaque saisie : pas de pbl. en revenche, je n'arrive pas a gerer l'erreur "si l'utilisateur tappe une lettre dans TextField utilisé pour les calculs".
comme tu pourras le voir dans le code ci-dessous, j'ai 3 TextField : 1 pour le montant de mon obligation, un pour le taux de remboursement et 1 pour le montant du remboursement. si l'utilisateur tappe une lettre dans "obligation" alors le prg recalcul son ancien montant (par le biais du tx et du montant de remboursement) et remplace la valeur erronee de "obligation".
le prg s'execute normalement mais m'envoit un mega message d'erreur apres l'accolade de sortie.
public void caretUpdate(CaretEvent ev){
Object source = ev.getSource();
try {
desactiv = true;
part = Double.valueOf(tx.getText()).doubleValue();
montant = Double.valueOf(obligation.getText()).doubleValue();
if (source == obligation) {
String texte = new String("" + forma.format((montant * part / 100)));
montanremb.setText(texte.replace(",", "."));
}
} catch (Exception erreur) {
montant = Double.valueOf(montanremb.getText()).doubleValue();
correction = new String("" + 100 * montant / part);
obligation.setText(correction.replace(".", "."));
}
}
voici le message d'erreur renvoye par eclipse :
saurais-tu m'aider a resoudre ce pbl ?
grand merci a toi pour l'assistanat dont tu me fais beneficier,