0

I am adding four components in gridbagLayout. I want to add vertical distances between them how to add vertical distance? components are

datfeild (Jlabel) billno (JTextFEILD) date (JTextField) search JBUTTOn) delete(JBUTTOn)

I tried by making widthy=1.0; but not getting. Please help me.. thank you..

enter code here


     b()
{
    GridBagLayout gridBag = new GridBagLayout();
    GridBagConstraints gbc = new GridBagConstraints();
    this.setLayout(gridBag);
    panel.setLayout(gridBag);

    JButton search=new JButton();
    JButton delete=new JButton();

    JLabel dateFieldLabel = new JLabel("Date Field");
    JTextField thingNameField = new JTextField("Billno");
    JTextField thingdateField = new JTextField("Date");


gbc.gridx = 0;
gbc.gridy = 0;
this.add(new JScrollPane(table),gbc);


gbc.gridx = 0;
gbc.gridy = 1;
gbc.insets = new Insets(2,2,2,2);
gbc.fill = GridBagConstraints.BOTH; 
gbc.weightx = 1.0; 
gbc.weighty = 1.0;

panel.add(dateFieldLabel,  gbc);




gbc.gridx = 0;
gbc.gridy = 2;  
gbc.insets = new Insets(2,2,2,2);
gbc.fill = GridBagConstraints.BOTH; 
gbc.gridwidth = 2;
gbc.fill = GridBagConstraints.HORIZONTAL; 
gbc.weightx = 0.0; 
gbc.weighty = 0.0;
panel.add(thingNameField,  gbc);        





gbc.gridx = 0;
gbc.gridy = 3;
gbc.insets = new Insets(2,2,2,2);
gbc.fill = GridBagConstraints.BOTH; 
gbc.weightx = 0.0; 
gbc.weighty = 1.0;
gbc.gridwidth = 2;
gbc.fill = GridBagConstraints.HORIZONTAL; 
panel.add(thingdateField,  gbc);

gbc.gridx = 0;
gbc.gridy = 4;
gbc.gridwidth = 1;
gbc.fill = GridBagConstraints.BOTH; 
gbc.fill = GridBagConstraints.NONE; 
gbc.weightx = 1.0; 
gbc.weighty = 1.0;

gbc.insets = new Insets(2,2,2,2);
panel.add(search,  gbc);

gbc.gridx = 1;
gbc.gridy = 4;  
gbc.gridwidth = 1;
gbc.fill = GridBagConstraints.BOTH; 
gbc.fill = GridBagConstraints.NONE; 
gbc.weightx = 1.0; 
gbc.weighty = 1.0;
gbc.insets = new Insets(2,2,2,2);
panel.add(delete,  gbc);
gbc.anchor = GridBagConstraints.NORTHEAST;

this.add(panel);


     }
mKorbel
  • 109,525
  • 20
  • 134
  • 319

2 Answers2

2

There is class GridBagConstraints which has field insets. This allows to set component insets:

Component c = ...
GridBagLayout gbl = ...
Container container = new JPanel(gbl);
GridBagConstraints gbc = gbl.getConstraints(c);
gbc.insets = new Insets(....);

container.add(c, gbc);
michael nesterenko
  • 14,222
  • 25
  • 114
  • 182
2

You have the answer right under your nose: use Insets:

gbc.insets = new Insets(2,2,2,2); 

could become

gbc.insets = new Insets(12,2,12,2);
Guillaume Polet
  • 47,259
  • 4
  • 83
  • 117