W pisaniu kodu spotkałem pewien problem i napisałem nawet jeszcze raz malutki kawałek, by stwierdzić czy czegoś nie namieszałem wcześniej, jednak to nic nie dało:
public class s extends JFrame{
public static void main(String[] args) {
new s();
}
s(){
setSize(600, 400);
JPanel jp = new JPanel(new FlowLayout());
ScrollPane sp = new ScrollPane();
JTextArea ta = new JTextArea();
add(jp);
jp.add(sp);
sp.add(ta);
ta.setPreferredSize(new Dimension(250, 300));
setVisible(true);
}
}
ScrollPane automatycznie nie zmienia swojego rozmiaru rozpychając się na maksa w JPanel, a powinien. Oczywiście mogę skorzystać z setPreferredSize dla ScrollPane, ale nie chcę bo ma się on sam dopasowywać do JPanelu, który się dopasuje do rozmiaru okna.
Efekt tego kodu: https://dl.dropbox.com/u/102323506/sp.png