import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GBLDemoPanel extends JPanel {
private JButton b1, b2, b3;
public GBLDemoPanel() {
super(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.anchor = GridBagConstraints.NORTH;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.weightx = 1.0;
gbc.weighty = 1.0;
gbc.insets = new Insets(1, 1, 1, 1);
gbc.gridx = 0;
b1 = new JButton("2/6 - langer Text");
add(b1, gbc);
gbc.gridx++;
b2 = new JButton("3/6");
add(b2, gbc);
gbc.gridx++;
b3 = new JButton("1/6 - Text");
add(b3, gbc);
addComponentListener(new ComponentAdapter() {
public void componentResized(ComponentEvent e) {
Dimension dim = GBLDemoPanel.this.getSize();
b1.setPreferredSize(new Dimension(Math.round(dim.width * 0.33f), b1.getPreferredSize().height));
b2.setPreferredSize(new Dimension(Math.round(dim.width * 0.5f), b2.getPreferredSize().height));
b3.setPreferredSize(new Dimension(Math.round(dim.width * 0.16f), b3.getPreferredSize().height));
b1.setMinimumSize(new Dimension(Math.round(dim.width * 0.33f), b1.getPreferredSize().height));
b2.setMinimumSize(new Dimension(Math.round(dim.width * 0.5f), b2.getPreferredSize().height));
b3.setMinimumSize(new Dimension(Math.round(dim.width * 0.16f), b3.getPreferredSize().height));
revalidate();
}
});
}
public static void main(String[] args) {
JFrame f = new JFrame("Spaltentest");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(600, 400);
f.setLocationRelativeTo(null);
f.add(new GBLDemoPanel());
f.setVisible(true);
}
}