Reputation: 2454
Each row in the above pic, is custom component that uses gridbaglayout for laying components. I am trying to avoid that space before the button "Abc", I want it completely pushed to the left hand side. How do I achieve this using gridbaglayout constraints?
EDIT Adding Source code.
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(11,0,0,0);
add(abcButton,gridBagConstraints);
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(20, 10, 0, 0);
add(comp1,gridBagConstraints);
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(20, 35, 0, 0);
add(comp2, gridBagConstraints);
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 0;
gridBagConstraints.ipadx = 120;
gridBagConstraints.ipady = 3;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(11,20, 0, 0);
add(txtField1, gridBagConstraints);
btnTxtField1.setMargin(new Insets(2, 1, 2, 1));
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 0;
gridBagConstraints.ipadx = 0;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(11, 0, 0, 0);
add(btnTxtField1, gridBagConstraints);
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 5;
gridBagConstraints.gridy = 0;
gridBagConstraints.ipadx = 120;
gridBagConstraints.ipady = 3;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(11, 0, 0, 0);
add(txtField2, gridBagConstraints);
gridBagConstraints = new GridBagConstraints();
gridBagConstraints.gridx = 6;
gridBagConstraints.gridy = 0;
gridBagConstraints.ipadx = 0;
gridBagConstraints.fill = GridBagConstraints.NONE;
gridBagConstraints.insets = new Insets(11, 0, 0, 0);
add(btnTxtField2, gridBagConstraints);
After adding weights:
Upvotes: 3
Views: 5660
Reputation: 2261
You have to set an anchor to GridBagConstraints.NORTHWEST or something like this....
constraints.anchor = GridBagConstraints.WEST;
Upvotes: 5