JTabbedPane, JPanel e JScrollPane

Gente, surgiu uma dúvida sobre como colocar barra de rolagem em JPanel.

Bem o JPanel ta dentro de um JTabbedPane, e nesse JPanel que aparece as inormações.

O problema é que preciso que apareça um número considerável de informações e precisarei de uma barra de rolagem para isso.

Como eu faço ?

Só um detalhe a mais: O layout do JPanel ta como null, se eu uso outro layout, nunca consigo deixá-lo do jeito que eu quero.

Não seria mais fácil você usar um JScrollPane?

Mas tem como adicionar um ScroolPane no JTabbedPane ?

Desculpe se eu estiver errado, mais acredito que você não tenha nenhum problema em fazer isso!

Em pouco tempo isto vai gerar problemas bem maiores…

Para mover o que está dentro do JTabbedPane :!: :?: :arrow: Você precisa colocar um JPanel com a barra de rolagem dentor da aba do JTabbedPane.

Para mover todo o JTabbedPane (acredito que não e não vejo o porque) :arrow: Você precisa colocar o JTabbedPane dentro de um JPanel com uma barra de rolagem.

:thumbup:

Na hora de eu adicionar, ta dando NullPointerException…

Eu tenho uma classe que extende JPanel, onde eu adicionava as informações e instanciava em um JTabbedPAne em outra classe.

Mudei o retorno da classe do JPanel para JScroolPane e, dentro da classe, criei um JPanel.

Instanciei os objetos no JPanel e o JPanel na classe JScroolPane, mas deu erro.

O Erro é esse:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at DetalhesPasta.<init>(DetalhesPasta.java:34) at Con_Pastas$BotaoDetalhes.actionPerformed(Con_Pastas.java:254) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272) at java.awt.Component.processMouseEvent(Component.java:6288) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:6053) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4651) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4481) at javax.swing.plaf.basic.BasicTableUI$Handler.repostEvent(BasicTableUI.java:918) at javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(BasicTableUI.java:1134) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:273) at java.awt.Component.processMouseEvent(Component.java:6288) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:6053) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4651) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643) at java.awt.EventQueue.access$000(EventQueue.java:84) at java.awt.EventQueue$1.run(EventQueue.java:602) at java.awt.EventQueue$1.run(EventQueue.java:600) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98) at java.awt.EventQueue$2.run(EventQueue.java:616) at java.awt.EventQueue$2.run(EventQueue.java:614) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.awt.EventQueue.dispatchEvent(EventQueue.java:613) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

entao eu adiciono o JScrollPane ou o JPanel no JTabbedPane ?

Você está usando NetBeans?

Eu uso o Eclipse Indingo…

mude este JPanel para JScrollPane

Eu mudei, agora eu to adicionando um JScrollPane no JTabbedPane, e o JPanel no JSroolPane, mas ta dando NullPointerException…

Acho que o problema é que você está colocando coisa demais ai!

pra você entender melhor…

JScrollPane é um JPanel com uma barra de rolagem junto,
você não precisa adicionar um outro JPanel nele, entendeu?

tenta ai!

Ele ta aparecendo os dados, mas as barras não aparecem…

[quote=ElesisLink]Ele ta aparecendo os dados, mas as barras não aparecem…

[/quote]

só vai aparecer se os dados ultrapassarem a área do painel.

mesmo quando ultrapassa nada muda, elas não aparecem

[quote=ElesisLink]mesmo quando ultrapassa nada muda, elas não aparecem
[/quote]

tem como postar o código?

Se eu uso Layout null, nao aparece as barras, se uso o layout ele aparece as barras mas não aparece os componentes…

Sério gente, ja tentei coisa pra caramba aqui e nada…