我有一個JPanel包含兩個JComponents,比如兩個JButton,btnLeft和btnRight。我希望這兩個按鈕水平對齊,並且我希望btnLeft位於JPanel的左側,而btnRight位於JPanel的右側,其間留下任何空間。將JComponents對齊JPanel的左側和右側
我知道我可以通過添加一個水平支撐中,我必須指定之間的空間量與BoxLayout的做到這一點,但必須有一個更簡單的方法,而無需指定剩的空間是什麼在之間。
我該怎麼做?
我有一個JPanel包含兩個JComponents,比如兩個JButton,btnLeft和btnRight。我希望這兩個按鈕水平對齊,並且我希望btnLeft位於JPanel的左側,而btnRight位於JPanel的右側,其間留下任何空間。將JComponents對齊JPanel的左側和右側
我知道我可以通過添加一個水平支撐中,我必須指定之間的空間量與BoxLayout的做到這一點,但必須有一個更簡單的方法,而無需指定剩的空間是什麼在之間。
我該怎麼做?
聽起來horizontalGlue是你在找什麼:
JComponent comp = new JPanel();
comp.setLayout(new BoxLayout(comp, BoxLayout.LINE_AXIS));
comp.add(new JLabel("left"));
comp.add(Box.createHorizontalGlue());
comp.add(new JLabel("right"));
如果你不介意的垂直拉伸按鈕,爲什麼不嘗試:
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class JFrame1 {
public static void main(String[] args) {
JFrame frame = new JFrame();
JButton btn1 = new JButton("Btn1");
JButton btn2 = new JButton("Btn2");
frame.setLayout(new BorderLayout());
frame.setSize(500, 400);
frame.add(btn1, BorderLayout.WEST);
frame.add(btn2, BorderLayout.EAST);
frame.show();
}
}
還考慮嵌套佈局在'EAST'和'WEST','FlowLayout'中。 – trashgod