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 :

Actualiser un JTable à partir d'un autre formulaire


Sujet :

Composants Java

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 78
    Points : 86
    Points
    86
    Par défaut Actualiser un JTable à partir d'un autre formulaire
    Bonjour à tous,

    Je développe actuellement une petite application de gestion de stock en JAVA pour entrainement,
    les données sont enregistrées dans une base DERBY embarquée.
    L'application est constituée pour l'instant d'un formulaire principal avec les menus fichiers, Edition, Pieces comme suit :

    Fichier
    -> Ouvrir
    -> Fermer

    Edition

    Pieces
    -> Ajout

    Le formulaire principal contient un JTable qui affiche une synthèse des pièces en stock.

    En cliquant sur le menu Ajout, un formulaire s'ouvre avec la possibilité de renseigner la référence et la quantité d'une pièce
    et ensuite valider pour l'enregistrer dans la base.

    je suis bloqué sur le fait que lorsque je valide, les données sont bien enregistrées dans la base mais je souhaiterais que le JTable (du formulaire principal)
    visible sous le formulaire Ajout soit actualisé instantanément (comme dans la plupart des applications).
    Quelle méthode employer pour réaliser ce que je souhaite ? est-ce qu'il existe un exemple de code ?

    Merci

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 978
    Points
    7 978
    Par défaut
    Tu as créés un modèle pour ta table ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 78
    Points : 86
    Points
    86
    Par défaut
    Oui j'ai bien un modèle déclaré comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    JTable     stTable = new JTable();
    final DefaultTableModel stDtm = new DefaultTableModel(0, 0);
    j'avais fait des tests avec le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    stDtm.addRow(new String [] { "col1", "col2", "col3", "col4"} );
    mais le souci est que je n'arrive pas à la faire fonctionner au niveau de la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void actionPerformed(ActionEvent e)
    du formulaire Ajout !

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    En quoi n'y arrive tu pas ? Quel est l'élément qui te bloque ?

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 978
    Points
    7 978
    Par défaut
    Et si tu nous montrait comment tu ajoutes ta nouvelle ligne dans le actionperformed ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 78
    Points : 86
    Points
    86
    Par défaut
    En fait c'est justement dans le actionperformed (du formulaire ajout) que je voudrais faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    stDtm.addRow(new String [] { "col1", "col2", "col3", "col4"} );
    Mais dans Ajout je n'ai pas accès à stDtm déclaré, certainement pas de la bonne manière, dans le formulaire principale.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public class FormPrincipale extends JFrame {
         JTable     stTable = new JTable();
         final DefaultTableModel stDtm = new DefaultTableModel(0, 0);

  7. #7
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Peux-tu nous sortir le code entier contenant ton action Ajout et la JFrame ?
    Car, on ne peux pas savoir pourquoi tu ne peux pas accéder à ton modèle dans ton action, si tu ne nous montre pas dans quel contexte celle-ci ce trouve.

    Si celle-ci se trouve dans FormPrincipale, mais dans une classe anonyme. Tu peux accéder à ton modèle de la manière suivante FormPrincipale.this.stDtm.
    Cela te permet de récupérer l'instance de FormPrincipale du contexte actuel, ainsi que son contenu indirectement.

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 78
    Points : 86
    Points
    86
    Par défaut
    Merci kolodz !
    effectivement il fallait juste faire ceci évidemment :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    FormPrincipale formPrincipale = new FormPrincipale();
    formPrincipale.stDtm.addRow(new String [] { "col1", "col2", "col3", "col4"} );
    en fait je n'avais pas déclaré une instance de FormPrincipale !

    Et merci aussi à wax78.

  9. #9
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 78
    Points : 86
    Points
    86
    Par défaut
    Bonjour à tous,

    Désolé de remonter cette vieille discussion, j'avais laissé tomber le Java juste après ce problème et actuellement j'essaye de reprendre.

    Donc mon problème actuellement c'est qu'avec le code suivant dans le formulaire Ajout :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    FormPrincipale formPrincipale = new FormPrincipale();
    formPrincipale.stDtm.addRow(new String [] { "col1", "col2", "col3", "col4"} );
    dès que je clique pour ajouter une pièce (donc je lance le formulaire Ajout), le formulaire principale est également réouvert à chaque fois (à cause du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FormPrincipale formPrincipale = new FormPrincipale();
    )
    comment remédier à ce problème ?
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Actualisation d'un sous formulaire à partir d'un autre formulaire
    Par rorobase dans le forum VBA Access
    Réponses: 1
    Dernier message: 10/02/2010, 20h14
  2. Mise à jour a partir d'un autre formulaire
    Par xboulney dans le forum Access
    Réponses: 8
    Dernier message: 28/02/2006, 21h55
  3. Cmd a partir d'un autre formulaire
    Par xboulney dans le forum Access
    Réponses: 18
    Dernier message: 09/12/2005, 07h28
  4. [PHP] Comment actualiser une frame à partir d'une autre ?
    Par pekka77 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 28/10/2005, 12h03
  5. Réponses: 6
    Dernier message: 27/10/2005, 21h12

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