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

NetBeans Java Discussion :

mettre à disable une jframe


Sujet :

NetBeans Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Par défaut mettre à disable une jframe
    Je vous explique la situation :

    j'utilise matisse/netbeans.
    j'ai 2 jframes j'aimerais que quand je cliques sur un bouton de ma jframe1, ma jframe2 s'affiche et ma jframe1 se mette en enabled(false)...

    Pour cela jutilise le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        private void button1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
           new Jframe2().setVisible(true);
           Jframe1.setEnabled(true);
        }
    J'ai l'erreure suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    non-static method setEnabled cannot be referenced in a static context
    Le problème c'est que netbeans ne me permet pas de modifier mon
    "private void button1ActionPerformed" en "private static void button1ActionPerformed"


    Donc ma question est comment faire pour rendre ma jframe1 enabled(false) ?

    Merci d'avance

  2. #2
    Membre chevronné
    Avatar de Orian
    Inscrit en
    Août 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Août 2006
    Messages : 372
    Par défaut
    met un le frame1 dans le constructeur de ta classe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public frame2(JFrame frame1) {
         ...
    }
    ou alors tu déclare ta frame1 en variable quelque part :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JFrame frame1 = new frame1()

  3. #3
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Pour moi, ce que tu veux faire revient à un JDialog modal pour ta 2eme Frame

    http://java.sun.com/j2se/1.5.0/docs/...g/JDialog.html)

  4. #4
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Par défaut
    Je ne veux pas utiliser un jdialog car si je ne fais que des jdialog j'aurais tout mon code source sur un seul fichier et se sera super dure a gérer.

    Je veux faire réellement plusieur jframe....

    Par contre j'ai essayé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        private void button1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
           new Jframe2().setVisible(true);
           javax.swing.JFrame Jframe1 = new Jframe1();
           Jframe1.setEnabled(false);
        }
    Mais ceci ne marche pas : pas de message d'erreur, mais pas disable non plus...


    et la première solution me renvoie plein de message d'erreurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public frame2(JFrame frame1) {  ... }

  5. #5
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Citation Envoyé par lex13
    Je ne veux pas utiliser un jdialog car si je ne fais que des jdialog j'aurais tout mon code source sur un seul fichier et se sera super dure a gérer.
    Là j'ai pas du tout compris

  6. #6
    Membre chevronné
    Avatar de Orian
    Inscrit en
    Août 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Août 2006
    Messages : 372
    Par défaut
    J'avis pas bien lu le message de départ.

    Et avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     new Jframe2().setVisible(true); 
    this.setEnabled(false); }

  7. #7
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Par défaut
    merci orion c'est exactement ce que je voulais !


    remika >> je me comprends ^^
    Le plus important c'est que j'ai une solution à mon pb !!

  8. #8
    Membre émérite
    Avatar de n!co
    Profil pro
    Inscrit en
    Février 2004
    Messages
    831
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 831
    Par défaut
    Citation Envoyé par lex13
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        private void button1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
           new Jframe2().setVisible(true);
           Jframe1.setEnabled(true);
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    non-static method setEnabled cannot be referenced in a static context
    L'erreur venait du fait que tu essayais d'appeler la méthode setEnabled() directement sur ta classe et non sur une instance de classe. Problème résolu quand Orian t'a proposé d'utiliser this qui fait référence à l'instance de ta classe en cours.
    (mieux vaut expliquer que de recommencer a faire des betises )

    n!co

  9. #9
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Par défaut
    Citation Envoyé par n!co
    L'erreur venait du fait que tu essayais d'appeler la méthode setEnabled() directement sur ta classe et non sur une instance de classe. Problème résolu quand Orian t'a proposé d'utiliser this qui fait référence à l'instance de ta classe en cours.
    (mieux vaut expliquer que de recommencer a faire des betises )

    n!co

    merci de l'explication, il est vrai que je prefere une explication qu'une solution

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

Discussions similaires

  1. Mettre / enlever dynamiquement la décoration d'une JFrame
    Par Starchic dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 27/03/2009, 16h23
  2. Réponses: 2
    Dernier message: 22/03/2007, 21h46
  3. [SWING] 1.4 Mettre une JFrame always on top
    Par PoPeio dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 29/03/2006, 16h13
  4. [SWING][JFrame] mettre un border dans une JFrame
    Par PoPeio dans le forum Agents de placement/Fenêtres
    Réponses: 1
    Dernier message: 20/03/2006, 16h01
  5. [AWT] JFrame - Mettre une taille minimum sur une Jframe
    Par rabobsky dans le forum Agents de placement/Fenêtres
    Réponses: 12
    Dernier message: 27/07/2005, 18h20

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