Ich bin ein JTable in ein JPanel wich Zugabe einer Gridlayout verwenden, aber ich das gleiche Verhalten nicht wie erhalten, wenn Sie eine JButton hinzufügen ...Wie wird eine JTable in ein JPanel eingefügt und automatisch skalierbar gemacht?
Ich möchte wissen, wie kann ich das gleiche Auto Redimensionierung erhalten Verhalten mit meiner JTable, wie wenn Sie eine JButton in ein JPanel hinzufügen, die ein GridLayout verwendet, und ich möchte auch, dass die Tabelle den gesamten Raum des Panels verwendet.
Sorry über Rechtschreibung, Englisch ist nicht meine Muttersprache. Hoffe ihr könnt mir helfen!
Dies ist mein Code:
import javax.swing.*;
import java.awt.*;
class Frame extends JFrame {
private JPanel center;
private JTable table;
public Frame(){
super("Test Jtable");
this.setLayout(new BorderLayout());
this.center = new JPanel();
this.center.setLayout(new GridLayout());
this.table = new JTable(50,50);
this.table.setGridColor(Color.black);
this.table.setCellSelectionEnabled(true);
this.center.add(this.table);
this.add(this.center,BorderLayout.CENTER);
}
}
public class TestFrame {
public static void main(String... args) {
Frame f =new Frame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400,400);
f.setVisible(true);
}
}
Beachten Sie den Unterschied zwischen Ihrem (expliziten) 'GridLayout' und dem (impliziten)' FlowLayout' des Beispiels. – trashgod
Wenn Sie ein JButton in ein JPanel einfügen, belegt das JButton den gesamten JPanel und wenn Sie die Größe des Fensters ändern, passt das JButton automatisch auch die Größe an. Ich möchte dasselbe mit meiner JTable machen, genau in JPanel passen und die automatische Größenanpassung bekommen. – mrgamertag
Möglicherweise möchten Sie ein Raster von Komponenten; mehr oben. – trashgod