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 :

Activé des boutons, textField, d'un JPanel depuis un autre JPanel


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
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Par défaut Activé des boutons, textField, d'un JPanel depuis un autre JPanel
    Bonjour,

    je souhaite activer toute une séries de boutons, de textField, etc.. contenu dans un JPanel ( Attributes.java ), avec une checkBox contenu dans un autre JPanel ( MainInfos.java ), tout deux affiché dans une JFrame du fichier Application.java.

    J'arrive à activer cette série d'objets directement avec une checkBox du JPanel des objets, mais avec la checkBox de l'autre JPanel ça ne fonctionne pas :/.

    voici l'interface :


    La checkBox ( contenu dans MainInfos.java ) à coté de Set Enchant doit activer les éléments pointés par les flèches...

    Methode ( contenu dans Attributes.java ) pour activer les élément.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    	public void setEnchantPanel(boolean op){
     
    	    labelEnchant1.setEnabled(op);
    	    labelEnchant2.setEnabled(op);
     
    	    comboEnchantType1.setEnabled(op);
    	    comboEnchantType2.setEnabled(op);
     
    	    buttonEnchant1.setEnabled(op);
    	    buttonEnchant2.setEnabled(op);
     
    	    textEnchant1.setEnabled(op);
    	    textEnchant2.setEnabled(op);
     
    	    revalidate();
    	    repaint();
    	}

    utilisation de la méthode setEnchantPane() avec la checkBox de Attributes.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	private Attributes g = new Attributes();
     
    	private void checkEnchantStateChanged(ItemEvent e) {
    		if(checkEnchant.isSelected()){
    		    g.setEnchantPanel(true);
     
    		}
    		else if(!checkEnchant.isSelected()) {
    		    g.setEnchantPanel(false);
    		}
    	}
    Je ne vois pas trop d'où vient le problème :/ peut-être dù a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private Attributes g = new Attributes();
    ?

    Si quelqu'un a une idée.
    Merci d'avance.

  2. #2
    Membre expérimenté Avatar de g0up1l
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 341
    Par défaut
    Au moins récupères-tu vraiment l'évènement 'StateChanged' de ta checkBox ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Par défaut
    Oui, puisque cette chekBox fonctionne pour activer et desactiver le JLabel "Enchant Lvl: et les deux JtextField à coté (voir image).

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Par défaut
    Apparement tout s'active bien j'ai vérifié avec un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("Enable: "+labelEnchant1.isEnabled());
    dans la méthode public void setEnchantPanel(boolean op){}

    L'effet de cocher ou de décocher la checkBox retourne bien un true ou false, mais l'intreface ne se refresh pas, le revalidate(); et le repaint(); dans la méthode setEnchantPanel ne fonctionnent pas? Est-ce que le problème serai dû à ce que les deux JPanel (contenu dans MainInfos.java et Types.java) soient affiché par la JFrame de Application.java et que cette dernière ne se refresh pas ?

  5. #5
    Membre expérimenté Avatar de g0up1l
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 341
    Par défaut
    ah, c'est bien possible qu'il faille que tu remontes jusqu'à ta Frame pour faire un :


  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Par défaut
    Finalement j'ai essayé un repaint de la frame mais rien n'y fait...

    Pourtant la méthode setEnchantPanel contenu dans Attributes.java fonctionne bien si je l'utilise directement avec une checkBox dans ce fichier... je vois vraiment pas

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

Discussions similaires

  1. Activation des boutons des scrollbars
    Par JP2010 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 03/11/2010, 17h49
  2. Réponses: 29
    Dernier message: 21/10/2008, 17h36
  3. Réponses: 17
    Dernier message: 30/01/2008, 15h53
  4. activés des cases a cocher en fonction d'une autre
    Par doogybreton dans le forum IHM
    Réponses: 27
    Dernier message: 22/01/2008, 17h29

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