2010-07-12 4 views
2

J'ai un problème étrange avec Swing. J'ai un JPanel principal auquel j'ajoute un JTabbedPane. A l'intérieur de ce JTabbedPane J'ajoute un autre panneau:Swing changer JTabbedPane en JPanel

myTabbedPane.add(innerPanel, "Title", 0); 
outerPanel.add(myTabbedPane); 

Maintenant, je ne veux plus myTabbedPane d'être JTabbedPane, je veux que ce soit un JPanel. Lorsque je change de type (et supprime les paramètres supplémentaires de sa méthode add()), rien dans le outerPanel n'est plus visible. (J'utilise setBounds() et j'ai mis les dispositions à null).

Pourquoi cela fonctionne-t-il lors de l'utilisation d'une fenêtre à onglets, mais s'arrête soudainement lors du passage à un JPanel? Je sais que cela peut être fait différemment (comme ajouter le innerPanel directement au outerPanel), mais s'il vous plaît ne me dites pas simplement de le faire différemment. Je voudrais juste savoir pourquoi cela ne fonctionne pas soudainement en utilisant un JPanel à la place. L'ajout d'un JPanel à un JPanel pose-t-il un problème? Merci!

+0

Un http://SSCCE.org/ aiderait –

Répondre

3

Arrêtez d'utiliser la mise en page nulle. Utilisez BorderLayout, puis utilisez l'option Ajouter un panneau intérieur au centre. Le volet à onglets utilisait sa propre disposition en couches - c'est pourquoi il fonctionnait auparavant.