IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants Java Discussion :

Problème de valeur d'un JFormattedTextField


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut Problème de valeur d'un JFormattedTextField
    Salut, je dispose d'un JFormattedTextField, lequel me donne une valeur que je récupère et test a chaque fois qu'une touche est appuyée
    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    private javax.swing.JFormattedTextField jFormattedTextField1;
    [...]
    jFormattedTextField1 = new javax.swing.JFormattedTextField(NumberFormat.getNumberInstance());
    [...]
            jFormattedTextField1.addKeyListener(new java.awt.event.KeyAdapter() {
                public void keyReleased(java.awt.event.KeyEvent evt) {
                    changeDejaPaye(evt);
                }
            });
    [...]
        private void changeDejaPaye(java.awt.event.KeyEvent evt) {
            // TODO add your handling code here:
            try {
                DecimalFormat df=new DecimalFormat();
                df.setMaximumFractionDigits(2);
                double dejaPaye=((Number)jFormattedTextField1.getValue()).doubleValue();
                double netAPayer=facture.getTotal().getTotalTTC()-dejaPaye;
                facture.getTotal().setNetAPayer(netAPayer);
                jLabel7.setText(df.format(netAPayer));
            } catch(java.lang.NullPointerException e) {}
        }
    le problème c'est que le catch est appelé au moment ou j'essaie de récupérer la variable dejaPaye, je me suis creusé la tête mais je ne vois pas d'où peu venir le problème.
    Merci pour votre aide.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Ben, affiche la stackTrace : il te dira quelle ligne pose problème, et donc où se trouve la variable null.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    d'une manière générale, c'est une très mauvaise idée de mettre un catch vide. Soit vous ne gérez pas l'exception -> alors faites la remonter, ne la bloquez pas. soit vous gérez l'exception -> alors faites en quelques chose d'utile (traitement d'erreur, trace dans les logs, etc)

  4. #4
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Ben, affiche la stackTrace : il te dira quelle ligne pose problème, et donc où se trouve la variable null.
    il semblerait que ce soit cette ligne qui pose problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    double dejaPaye=((Number)jFormattedTextField1.getValue()).doubleValue();
    Merci !

  5. #5
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut
    apparement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jFormattedTextField1.getValue()
    a une valeur nulle (null)
    je vois pas trop comment faire.

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2008
    Messages : 34
    Par défaut
    Salut,

    soit tu gère un message à retourner à l'utilisateur si la valeur est null,
    soit tu empêche l'action si la valeur est null, mais dans tous les cas il faut que tu nous précise le type d'exception retourné et vérifie que le champ à bien une valeur avec un system.out ou en mode debug.

    De plus est ce que tu est bien sur que ton champ contient bien une valeur et à quel moment tu la renseigne

  7. #7
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ninlock Voir le message
    Salut,

    soit tu gère un message à retourner à l'utilisateur si la valeur est null,
    soit tu empêche l'action si la valeur est null, mais dans tous les cas il faut que tu nous précise le type d'exception retourné et vérifie que le champ à bien une valeur avec un system.out ou en mode debug.

    De plus est ce que tu est bien sur que ton champ contient bien une valeur et à quel moment tu la renseigne
    Que me conseil tu de mettre dans mon catch pour arriver a faire cela?
    Perso j'ai affiché la valeur jFormattedTextField1.getValue() car je me doutais que c'était la valeur null, et en effet elle vaut null.
    Merci

Discussions similaires

  1. Problème de valeur nulle
    Par romulus34 dans le forum Access
    Réponses: 11
    Dernier message: 21/10/2005, 15h18
  2. Problème de valeur
    Par Kerod dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 22/09/2005, 17h00
  3. Problème de valeur de retour de MessageDlg
    Par Pill_S dans le forum Composants VCL
    Réponses: 9
    Dernier message: 20/08/2005, 15h44
  4. problème récupération valeur d'un "div"
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 29/06/2005, 10h04
  5. Problème de valeur null dans un recordset
    Par Petzouille57 dans le forum Access
    Réponses: 3
    Dernier message: 19/05/2005, 11h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo