2010-10-22 2 views
0

Je construis une applet Java dans NetBeans qui a un TabbedPane en bas de l'applet et un Panel normal en haut. Je voudrais que le panneau supérieur permute en fonction de l'onglet sélectionné en bas. (Je voudrais joindre une capture d'écran pour clarifier, mais être nouveau ici il n'est pas autorisé.)Comment utiliser les changements d'onglet TabbedPane pour afficher différents panneaux dans une applet construite dans l'EDI NetBeans?

Un bouton a ActionPerformed, mais un TabbedPane ne semble pas avoir StateChange pour chacun des onglets séparés (du moins pas facilement visible dans NetBeans).

Des idées?

Répondre

0

Selon here, vous pouvez faire quelque chose comme ceci:

// Create the tabbed pane 
JTabbedPane pane = new JTabbedPane(); 

// Add tabs...; see Adding a Tab to a JTabbedPane Container 

// Register a change listener 
pane.addChangeListener(new ChangeListener() { 
    // This method is called whenever the selected tab changes 
    public void stateChanged(ChangeEvent evt) { 
     JTabbedPane pane = (JTabbedPane)evt.getSource(); 

     // Get current tab 
     int sel = pane.getSelectedIndex(); 
    } 
}); 

Ensuite, utilisez une instruction switch pour diriger le flux du programme. Suite: La dernière fois que j'ai utilisé un JTabbedPane dans NetBeans, tout ce que je devais faire était d'ajouter un nouvel onglet et de construire simplement le GUI pour cela. Si vous rencontrez des problèmes avec cela, vous pouvez jeter un oeil à la Card Layout.

Si vous passez par les onglets sur le côté droit de votre écran de développement, vous devriez venir à travers une liste d'événements. Ce que vous devez faire est de sélectionner l'événement approprié dans cette liste et Netbeans le fera pour vous. D'un autre côté, vous pouvez ouvrir le fichier .java (alors qu'il n'est pas ouvert dans netbeans) avec un éditeur de texte (WordPad, NotePad ++, etc) modofiy le code que vous voulez et enregistrez-le. Lorsque vous réexécuterez le fichier via netbeans, vous devriez voir que vos modifications ont également été chargées.

+0

Merci pour la réponse. Voici deux autres questions. – ssvarc

+0

Merci pour la réponse. Voici la deuxième moitié de la question initiale. 1. NetBeans crée l'interface utilisateur et vous ne pouvez pas modifier le code généré. Comment puis-je afficher un panneau différent en fonction de l'onglet sélectionné? (Le code pour détecter quel panneau est sélectionné que vous avez fourni - Je vais devoir le tester pour voir si cela fonctionne.) Merci! – ssvarc

+0

J'ai modifié ma réponse. – npinti

Questions connexes