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 :

Application SWING / changement de vue


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Par défaut Application SWING / changement de vue
    Bonjour,
    je travaille actuellement sur un projet java utilisant une interface graphique SWING et je rencontre un problème :
    ma fenêtre de départ est compose d'un titre (JLabel) et de deux boutons (JButton) dont un s'appel nouveau. Je voudrais faire en sorte que quand je clique sur nouveau la fenêtre reste la même mais que la vue change c'est à dire que je passe dans mon cas à plein de JLabel et de JTextField et de deux autres boutons.
    Je pense que la gestion d'événement ne me posera pas de problème (public void mouseClick(MouseEvent)).

    Merci d'avance pour les réponses.

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    Salut,

    Euh...
    Tu devrais peut-être posé une question, où se situe ton problème ? Je comprends à peu près ce que tu veux faire mais je ne comprends pas où tu bloques...

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Par défaut
    En fait je ne sais pas comment changer la "vue" ... c'est le JPanel qu'il faut changer ? il faut le changer dans la méthode mouseClick(MouseEvent) ?
    il faut créer un JPanel à part dans un autre classe ou bien ce n'est pas utile ?
    Comment changer de JPanel en gardant la même fenêtre ?


    Merci

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    oki je vois un peu mieux, alors il y a plusieurs possibilité :
    • jouer avec les méthodes add et remove : tu enleve les composants qui disparaissent et tu ajoute sceux qui apparaissent
    • jouer avec setVisible(),
    • utiliser un cardLayout : ce layout permet d'empiler plusieurs composants et de choisir lequel est au dessus.

    La méthode la plus propre me parait être la dernière (il y en a surement d'autres et peut-être mieux).

  5. #5
    Membre émérite
    Inscrit en
    Mars 2006
    Messages
    848
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 848
    Par défaut
    Je suis d'accord avec les solutions de gailuris. Je vais juste suggérer qqchose :
    pour la première possibilité, il peut être plus facile d'avoir déjà un (ou des) JPanel de prêt pour chacune de vues, histoire de ne pas avoir à tout replacer à chaque fois. Et là, on se rapproche de la méthode du cardLayout

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Par défaut
    Je crois que je vais choisir la première solution :
    j'utilise générateur d'interfaces graphiques de NetBeans et ça a l'air assez pénible de rajouter un layout dans le code...
    Je vais créer mes JPanels dans des classes séparées et ensuite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    // ma classe étend JFrame
    public void mouseClicked(MouseEvent e) {
    // vérification bouton puis :
    this.remove(jPanel1);
    this.add( new AutrePanel() );
    }
    Merci, j'essaye ça de suite.

Discussions similaires

  1. <SWING> Changement de fenêtres dans une application
    Par raspac dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 01/06/2007, 10h41
  2. Réponses: 10
    Dernier message: 16/03/2006, 11h31
  3. [Stratégie] Mise à jour application SWING
    Par chr_one dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 26/08/2005, 15h31
  4. [Info][Ecran Tactile]Application Swing
    Par Rampa dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 12/07/2005, 10h09
  5. [JDBC][ARCHITECTURE] application swing
    Par benssj5 dans le forum JDBC
    Réponses: 6
    Dernier message: 31/08/2004, 19h25

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