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

 Java Discussion :

Récupérer valeur d'un 2ème form


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 39
    Par défaut Récupérer valeur d'un 2ème form
    Bonjour à tous !

    Voilà, je développe actuellement ma première "vraie" application, soit une application de gestion client/factures basée sur une DB Access. Tout ce passe à merveille jusqu'à maintenant mais j'ai un problème :
    J'ai une fenêtre avec des jTextField qui prennent les valeurs des champs d'un objet Client. J'ai un bouton qui lance une requête SQL et qui récupère un ArrayList de Client. Je ne peux afficher qu'un seul client dans les jTextField et donc, je voudrais pouvoir ouvrir une autre fenêtre, composée essentiellement d'un jTable, lui passer le ArrayList en paramètre pour qu'elle l'affiche, et il faut aussi qu'une fois la selection faite dans la jTable, on appuie sur un bouton qui ferme cette fenêtre secondaire et passe l'objet Client correspondant à la ligne selectionnée à la fenêtre principale. Celle-ci remplit alors les jTextField avec les valeurs ad-oc...

    Merci pour votre aide !

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    [mode troll]
    Une vraie application ne peut pas être basée sur DB Access
    [/mode troll]

    Sinon, tu voulais quoi ? Tu ne dis pas ou est le problème
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 39
    Par défaut
    Je sais que le choix d'access n'est pas le meilleur, mais c'est pour une appli Standalone, et je voulais que ce soit simple.

    Le problème, c'est que je peux créer les 2 fenêtres, mais je ne sais ni comment passer l'ArrayList de la première à la deuxième (ou bien un constructeur avec un paramètre ?), ni comment récupérer la valeur de la deuxième dans la première avant sa fermeture...

  4. #4
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    POur une appli standalone tu as des choix plus légitimes qu'Access au niveau DB.
    En particulier Derby ou HSQLDB qui sont des bases de données embarquées écrites entièrement un java, donc portables par définition.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 39
    Par défaut
    Effectivement, mais le plus important pour moi était d'écrire tout à la main, pour bien comprendre tous les principes avant d'utiliser les "aides" fournies par les EDI, peu importe le type de base.

    Sinon, rien pour mon problème ? Je pense que pour passer l'ArrayList il me faut un constructeur qui récupère ce paramètre. Par contre, comment renvoyer l'objet retour une fois selectionné dans le jTable ?

  6. #6
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Là c'est un pur problème d'archi.

    En fait tu dois créer une classe faisant a=office de contrôleur, qui aura pour but de gérer les deux fenêtres.

    De plus les deux fenêtres devront avoir connaissance de cette classe (qui sera soit passée en paramètre à la construction des fenêtre, ou sera un Singleton)

    Enfin cette classe doit pouvoir régir les échanges entre les deux fenêtres. Donc chaque fenêtre doit fournir des méthodes permettant de récupérer les données voulues. Les deux fenêtres doivent êtres des attributs privés du contrôleur. Puis le contrôleur doit fournir à ses deux attributs les données via des méthodes d'échange.

    Grosso merdo tu auras une méthode getList dans ta première fenêtre, de même dans la seconde.
    Puis dans le contrôleur tu auras une méthode getListFen1() qui renvoie le getList de la fenêtre 1, et une méthode getListFen2() qui renvoie le getList de la fenêtre 2.

    (ensuite tu peux brancher ça avec les concepts d'Observer & cie mais bon là c'est plus loin)

Discussions similaires

  1. récupérer valeur d'une autre form
    Par hamzawhy dans le forum C#
    Réponses: 1
    Dernier message: 12/06/2014, 20h06
  2. Récupérer valeur combobox dans un form
    Par Skice dans le forum VB.NET
    Réponses: 9
    Dernier message: 03/06/2011, 11h00
  3. [AC-2003] Récupérer valeur active d'un autre form.
    Par lbar012001 dans le forum IHM
    Réponses: 2
    Dernier message: 01/02/2011, 18h03
  4. Réponses: 21
    Dernier message: 22/05/2008, 16h51
  5. Réponses: 7
    Dernier message: 01/10/2007, 22h25

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