I am making swing application. And there is too much height of my jPanel. So I want to make this panel as scrollable.: Following is my description of my requirement.
I have four jpanel in one jpanel I mean:
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
JPanel p4=new JPanel();
I am adding p2, p3, p4
inside p1
like following output:
like above showing panel has more height than computer screen height. So I want to display all content of my panel on computer screen by scrolling.
I searched here and found the following questions:
However, the answers did not solve myproblem.
Without seeing your code, my guess is that you don't have a JScrollpane
to provide the scrollable behaviour you want.
JPanel mainPanel = new JPanel(); //This would be the base panel of your UI
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
JPanel p4=new JPanel();
JPanel newPanel = new JPanel();
newPanel.add(p1);
newPanel.add(p2);
newPanel.add(p3);
newPanel.add(p4);
JScrollPane pane = new JScrollPane(newPanel);
mainPanel.add(pane);
Since you use NetBeans, add a JScrollpane
from the palette in which you'll add a panel to contain the 4 others. I think you could also just add the 4 panel into the JScrollpane
.
Add your panel to a JScrollPane
. Assumed that you want vertical scrolling only:
JScrollPane scrollPane=new JScrollPane(panel,
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
For fine-tuning the scroll amounts, you can optionally implement the Scrollable
interface.
See also How to Use Scroll Panes (The Java Tutorial)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With