所以我有我的Main,并且在其中完成。
JFrame CF = new JFrame();
CF.setLayout(new BorderLayout());
CF.add(new CarGUI(), BorderLayout.NORTH);
// CF.add(new CarGUI(), BorderLayout.SOUTH);
//' South FlowLayout ' here ^
CF.setSize(600,400);
CF.setVisible(true);
在我的CarGUI类中,我有:
public class CarGUI extends JPanel {
private CarTaxManager manager;
private JLabel lpLabel;
private JTextField searchField;
private JButton searchButton;
public CarGUI(){
FlowLayout NorthLayout = new FlowLayout();
//this.setLayout(new FlowLayout());
this.setLayout(NorthLayout);
lpLabel = new JLabel("License Plate");
searchField = new JTextField(10);
searchButton = new JButton("Search");
add(lpLabel);
add(searchField);
add(searchButton);
}
因此,基本上必须在这里发生的事情是,我需要制作另一个流布局,称为“ SouthLayout”,并且基本上,我需要将其放置到那个布局上。但是,必须在CarGUI内部完成布局。我似乎无法正常工作。
编辑:
最终看起来像什么:
因此,我总共需要两个FlowLayouts。一个在顶部,一个在底部。它们都不在中间包含TextPane。
这一切都在主要的borderLayout中。
提前致谢!
最佳答案
听起来很像BorderLayout
的候选人
鉴于您向我们展示的内容,我已经修改了您的代码以开始实施它的一个好的开始:
public class CarGUI extends JPanel {
private CarTaxManager manager;
private JLabel lpLabel;
private JTextField searchField;
private JButton searchButton;
public CarGUI(){
setLayout(new BorderLayout());
JPanel north = new JPanel();
north .setLayout(new FlowLayout());
lpLabel = new JLabel("License Plate");
searchField = new JTextField(10);
searchButton = new JButton("Search");
north.add(lpLabel);
north.add(searchField);
north.add(searchButton);
add(north, BorderLayout.NORTH);
JPanel center = new JPanel();
center.setLayout(new FlowLayout());
//TODO add components to center
add(center, BorderLayout.CENTER);
JPanel south= new JPanel();
south.setLayout(new FlowLayout());
//TODO add components to south
add(south, BorderLayout.SOUTH);
}
关于java - 一类中有多个FlowLayouts?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33108497/