Dimentica il mio esempio e prova con il secondo di questi codici:
1° Codice (qui il problema non sussiste)
codice:
package prova;
import java.awt.*;
import javax.swing.*;
public class Esempio extends JFrame {
public Esempio() {
setSize(200, 200);
JPanel jp = new JPanel();
jp.setLayout(new GridLayout(20, 20));
int b = 0;
for(int i = 0; i < 20; i++) {
for(int j = 0; j < 20; j++) {
jp.add(new JButton("Button " + b));
++b;
}
}
JScrollPane jsp = new JScrollPane(jp);
add(jsp, BorderLayout.CENTER);
getContentPane().add(jsp, BorderLayout.CENTER);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Esempio interfaccia = new Esempio();
interfaccia.setVisible(true);
}
});
}
}
2° Codice (qui compare la barra orizzontale ma io vorrei che comparisse quella verticale)
codice:
package prova;
import java.awt.*;
import javax.swing.*;
public class Esempio extends JFrame {
public Esempio() {
setSize(200, 200);
JPanel jp = new JPanel();
jp.setLayout(new FlowLayout());
int b = 0;
for(int i = 0; i < 20; i++) {
for(int j = 0; j < 20; j++) {
jp.add(new JButton("Button " + b));
++b;
}
}
JScrollPane jsp = new JScrollPane(jp);
add(jsp, BorderLayout.CENTER);
getContentPane().add(jsp, BorderLayout.CENTER);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Esempio interfaccia = new Esempio();
interfaccia.setVisible(true);
}
});
}
}
Il problema è che io vorrei la barra verticale e allo stesso tempo il FlowLayout. Detto in altro modo vorrei la botte piena e la fidanzata ubriaca (non sono sposato). Così dovrebbe essere più semplice capire. Leggi il secondo codice, dimentica il primo; non posso usare il GridLayout().