我有一个带有JFileChooser和JTextArea的窗口。 JFileChooser位于BorderLayout的NORTH部分。 JTextArea位于BorderLayout的CENTER部分。
我想将左边的所有JFileChooser对齐,但它不会像我想的那样移动并保持中心。 此外,我希望我的JFileChooser占据我窗户的所有长度。
修改
以下是主要代码
public class MainServer
{
public static void main(String[] args)
{
ServerBoard frame=new ServerBoard(1000, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}
这是窗口代码
public class ServerBoard extends JFrame
{
private JButton startserver;
private JButton senddata;
private JButton sendgps;
private JTextArea messagearea;
public ServerBoard(int l, int h)
{
super("ServerBoard");
this.initialize();
this.setSize(l,h);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
}
public void initialize()
{
// Define a panel
Container c=this.getContentPane();
this.messagearea=new JTextArea(40,60);
c.add(this.createNorth(), BorderLayout.NORTH);
c.add(messagearea, BorderLayout.CENTER);
}
public JPanel createNorth()
{
JPanel panelnorth=new JPanel();
JToolBar toolbarnorth=new JToolBar();
panelnorth.add(toolbarnorth);
this.startserver=new JButton("START SERVER");
startserver.addActionListener(new ServerBoardListener());
toolbarnorth.add(startserver);
this.senddata=new JButton("SEND DATA");
senddata.addActionListener(new ServerBoardListener());
toolbarnorth.add(senddata);
this.sendgps=new JButton("SEND GPS FRAME");
sendgps.addActionListener(new ServerBoardListener());
toolbarnorth.add(sendgps);
return panelnorth;
}
}
这是我的窗口
我真的很想使用这个JFileChooser。你能帮帮我吗?
事先感谢你的答案。
答案 0 :(得分:2)
简单地嵌套你的JPanels。创建一个名为northPanel的新JPanel,它使用BorderLayout,并将其添加到BorderLayout.NORTH位置的主窗口,然后将JFIleChooser添加到其BorderLayout.WEST位置的此northPanel JPanel。
选项2:给northPanel一个沿着线轴定向的BoxLayout,添加JFileChooser,并添加胶水。