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

AWT/Swing Java Discussion :

Débutant: appli multi fenêtrée


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 33
    Par défaut Débutant: appli multi fenêtrée
    Habituée au monde des appli webs java je suis super débutante dans le monde des appli fenêtrées.

    Après avoir lu des tutos par-ci par-là j'ai les bases de Swing mais il y a une question qui me trottine.

    Voilà: je vais créer une appli avec au départ un menu général à partir duquel il y a des boutons pour aller vers les modules (saisie commande, paiement, etc).
    Si on était sur une appli web il suffit de changer de pages à chaque fois, mais sur les applications fenêtrées comment ça se passe?

    Si j'ai une fenêtre pour afficher le menu général avec les boutons des menus.
    Pour passer à la saisie de commande je dois fermer (methode close) la fenêtre du menu général ou seulement la cacher (setVisible = False) ???

    Et si j'ai des variables à transmettre d'une fenêtre à une autre comment ça se passe???

  2. #2
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Pour le choix entre le setVisible(false) ou le dispose(), ça dépend si tu voudras réafficher la fenêtre plus tard ou pas.

    Si tu veux rester dans la même fenêtre, et juste changer une partie de l'IHM (le panel principal mais pas le menu ou boutons), utilise le CardLayout, qui permet de superposer des JPanels et d'afficher celui que l'on désire.

    Les objets métiers ne sont pas contenus dans les fenêtres, par contre chaque fenêtre peut accéder à ces objets métier.

  3. #3
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Si j'ai une fenêtre pour afficher le menu général avec les boutons des menus.
    Pour passer à la saisie de commande je dois fermer (methode close) la fenêtre du menu général ou seulement la cacher (setVisible = False) ???
    Eh bien tout dépend de comment tu veux que l'utilisteur utilise ton appli. Qu'elle interface est le plus pratique, ou bien le plus simple, ou bien le plus fonctionnel. En général une appli possède une fenetre principal qui elle est toujours visible. Et quand tu as besoin d'autres fenêtre pour saisir des données par exemple, tu en ouvre une autre par dessus. Tu as la possibilité d'ouvrir des fenêtre modal (JDialog) , souvent utilisé qui empêche l'utilisateur de revenir a la fenêtre précédente. Il est obligé d'être sur cette fenêtre modal.
    Entre fermer la fenêtre ou la caché, en général on la cache quand on a besoin d'y revenir (ou être successible de) par la suite. Cela évite de réinstancier tes composant, ce qui peut être long.

    Et si j'ai des variables à transmettre d'une fenêtre à une autre comment ça se passe???
    En général il convient de dissocié l'IHM des données. Tu as des objets qui s'occupe du code métier, qui gére, controle l'intégrité des données. Et par ailleurs tu as des objets qui se contente d'afficher ses données.
    Ils communiquent simplement en passant leurs références dans un autre objets, via les arguments des méthodes (pour une utilisation temporaire) ou des constructeurs (ce qui permet avec un attribut de classe de conserver leur référence dans la totalité de l'objet et non seulement à l'intérieur d'une méthode particulière). Après il y a d'autre possibilités, ce que je dit n'est pas exhaustif.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 33
    Par défaut
    Merci là c'est plus clair...

    Et quand tu as besoin d'autres fenêtre pour saisir des données par exemple, tu en ouvre une autre par dessus. Tu as la possibilité d'ouvrir des fenêtre modal (JDialog)
    Oui mais un Jdialog ne peut pas suffire à mes besoins: est-ce qu'on peut y placer des Jtable, des Jtree , etc ?

  5. #5
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Bien sur. Le JDialog est une fenêtre. Mais elle a la possibilité d'être modal ou non. Alors qu'une JFrame ne peut pas être modal. Un JDialog ne peut pas non plus être réduit dans la barre des taches (iconifié) et tu n'as pas non plus le bouton qui permet de la maximiser. Mais sans cela c'est une fenêtre qui possède un ContentPane comme les autres.

    Cette ressource peut-être intéressante :
    http://pagesperso-orange.fr/emmanuel...M/Fenetre.html

Discussions similaires

  1. [WD17] Problème de focus Appli multi-fenêtre
    Par Jérôme .G dans le forum WinDev
    Réponses: 12
    Dernier message: 11/09/2013, 16h41
  2. [Débutant] Requete multi-bases
    Par DiGueDao dans le forum SQL
    Réponses: 3
    Dernier message: 28/08/2005, 20h19
  3. Quel lg et IDE pour dev 1 appli multi-plateformes?
    Par Langelot dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 04/02/2005, 00h36
  4. [Débutant]Appli Graphique
    Par Lucier dans le forum Interfaces Graphiques en Java
    Réponses: 21
    Dernier message: 15/01/2005, 22h03
  5. Configuration d'appli multi-serveurs
    Par j2ee_laurent dans le forum Struts 1
    Réponses: 5
    Dernier message: 04/10/2004, 21h03

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