Jpanel e Jscrollpane

di il
1 risposte

Jpanel e Jscrollpane

Ciao, stò cercando di inserire diversi Jpanel che contengono alcuni bottoni, all'interno di un Jscrollpane.
Il problema è che se inserisco un solo Jpanel, tutto funziona (immagine 1).
Ma se ne inserisco N, qualcosa non và, cioè vengono messi in orizzontale e in modo confuso(immagine 2).

Ecco il codice completo, grazie per l'aiuto.

public class Main extends javax.swing.JFrame {
  JPanel borderLayoutPanel;
 public Main() {
 
  	//PANEL ESISTENTE
        gridPanel = new JPanel(new GridLayout(0, 1));
        
        //SCOLLPANE ESISTENTE
        jScrollPane3 = new JScrollPane(gridPanel);
        jScrollPane3.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
        
         borderLayoutPanel = new JPanel(new BorderLayout());
        borderLayoutPanel.add(jScrollPane3, BorderLayout.CENTER);
        
         this.Avvio();
        this.add(borderLayoutPanel, BorderLayout.CENTER);
          }
        
         private void Avvio() {
        JPanel pane = new JPanel(new GridBagLayout());
        pane.setBorder(BorderFactory.createLineBorder(Color.BLUE));

        for (int i = 0; i < 10; i++) {

            JButton button;
            pane.setLayout(new GridBagLayout());
            GridBagConstraints c = new GridBagConstraints();
            c.fill = GridBagConstraints.HORIZONTAL;
            c.anchor = GridBagConstraints.PAGE_START;

            button = new JButton("Button 1");
            c.weightx = 0.5;
            c.gridx = 0;
            c.gridy = 0;
            pane.add(button, c);

            button = new JButton("Button 2");
            c.gridx = 0;
            c.gridy = 1;
            pane.add(button, c);

            button = new JButton("Button 3");
            c.gridx = 1;
            c.gridy = 1;
            pane.add(button, c);

            gridPanel.add(pane);
            gridPanel.revalidate();
            gridPanel.repaint();
            jScrollPane2.setViewportView(pane);

        }

    }


Allegati:
22876_6d073bedd85362944231eaa5d2dfeb67.png
22876_6d073bedd85362944231eaa5d2dfeb67.png

22876_54d03d1e932799cc3275a20d45cd68c2.png
22876_54d03d1e932799cc3275a20d45cd68c2.png

1 Risposte

  • Re: Jpanel e Jscrollpane

    Il codice che hai postato però non è completo, manca il metodo main, usi alcune variabili che non si vede come e dove crei, e forse manca anche altro.
    Comunque, provando ad aggiungere i pezzi mancanti e lanciando il codice io ottengo il risultato che mostri nella prima immagine.

    Con quale codice ottieni il risultato della seconda immagine? Puoi postarlo per intero?
Devi accedere o registrarti per scrivere nel forum
1 risposte