Dovrei creare una sorta di rubrica in Java con una tabella, per esercizio.. l'unico problema è che quando inserisco una JTable in un JScrollPane, mi si viene a creare uno spazio vuoto sotto alla tabella, che di conseguenza va a spingere più in basso gli altri widget, così intendo:
Senza titolo-1.jpg
come posso fare per far adattare lo spazio inutilizzato sotto alla grandezza della mia tabella?
il pezzettino di codice riguardo al TableView è il seguente:
codice:/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package contatto; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; /** * * @author Gianluca */ public class MyTableView extends JPanel implements ActionListener{ JTextField f1, f2; JButton b1; Contatto[] elementi; public MyTableView(Contatto[] l){ super(); this.elementi = l; MyTableModel model = new MyTableModel(elementi); JTable table = new JTable(model); JScrollPane scroll = new JScrollPane(table); f1 = new JTextField(25); f2 = new JTextField(25); f2.setEditable(false); b1 = new JButton("Ricerca"); add(scroll); add(f1); add(b1); add(f2); b1.addActionListener(this); } @Override public void actionPerformed(ActionEvent e) { String parola_in = f1.getText().toLowerCase(); StringBuilder parola_out = new StringBuilder(); parola_out.append("Trovato: "); for ( int i = 0; i < elementi.length; i++ ){ if (elementi[i].nome.toLowerCase().contains(parola_in) || elementi[i].cognome.toLowerCase().contains(parola_in)){ parola_out.append(elementi[i].nome); parola_out.append(" "); parola_out.append(elementi[i].cognome); break; } } f2.setText(parola_out.toString()); } }