【发布时间】:2014-08-01 06:11:22
【问题描述】:
我尝试从 stackoverflow 执行此操作:
adding multiple jPanels to jFrame
但这似乎不像示例中那样成功,谁能告诉我我做错了什么? 我试图将多个 JPanel 添加到 JFrame 中,每个 JPanel 都有自己的大小。我还希望可以为每个 JPanel 提供特定的尺寸以及将它们放在我想要的确切位置的能力。
我尝试制作的图片:
到目前为止,这是我的代码: 公共 ReserveringenGUI(ReserveringController 控制器) { this.controller = new ReserveringController(); 制作框架(); }
public void makeFrame() {
JFrame frame1 = new JFrame();
frame1.setTitle("Reserveringen");
frame1.setSize(800, 500);
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel container = new JPanel();
container.setLayout(new BoxLayout(container, BoxLayout.X_AXIS));
JPanel willekeurigPanel = new JPanel();
willekeurigPanel.setSize(400, 500);
willekeurigPanel.setBackground(Color.YELLOW);
willekeurigPanel.setVisible(true);
JPanel overzichtPanel = new JPanel();
overzichtPanel.setSize(400, 500);
overzichtPanel.setBackground(Color.red);
overzichtPanel.setVisible(true);
DateFormat format = new SimpleDateFormat("dd-MM-yyyy");
DateFormatter df = new DateFormatter(format);
JFormattedTextField dateBeginField = new JFormattedTextField(df);
dateBeginField.setPreferredSize(new Dimension(250, 20));
dateBeginField.setValue(new Date());
JFormattedTextField dateEndField = new JFormattedTextField(df);
dateEndField.setPreferredSize(new Dimension(250, 20));
dateEndField.setValue(new Date());
JTextField klantnummer = new JTextField();
klantnummer.setPreferredSize(new Dimension(250, 20));
JTextField artikelnummer = new JTextField();
artikelnummer.setPreferredSize(new Dimension(250, 20));
JLabel dateBeginLabel = new JLabel("Begin Datum ");
JLabel dateEndLabel = new JLabel("Eind datum: ");
JLabel klantID = new JLabel("Klant nummer: ");
JLabel artikelID = new JLabel("Artikel nummer: ");
JButton voegReserveringToe = new JButton("Voeg toe");
voegReserveringToe.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
voegReserveringToeActionPerformed(evt);
}
});
willekeurigPanel.add(dateBeginLabel);
willekeurigPanel.add(dateBeginField);
willekeurigPanel.add(dateEndLabel);
willekeurigPanel.add(dateEndField);
willekeurigPanel.add(klantID);
willekeurigPanel.add(klantnummer);
willekeurigPanel.add(artikelID);
willekeurigPanel.add(artikelnummer);
willekeurigPanel.add(voegReserveringToe);
container.add(willekeurigPanel);
container.add(overzichtPanel);
frame1.add(container);
frame1.setVisible(true);
}
【问题讨论】:
-
这将是一个讨厌的评论,但是......问题是“我试图用这个答案做某事,但我得到了别的东西,该怎么办?!?!”如果您想要一个好的答案,请告诉我们您想要什么以及出了什么问题。 “似乎没有解决”并不是对问题的一个很好的描述。此外,如果您想要特定的尺寸和位置 - 为什么不阅读官方 Oracle 教程的“绝对定位”部分(链接在您已经阅读的问题的答案中)?
-
添加了一张应该是什么样子的图片,链接工作正常,但它不能让你定位自己
标签: java swing layout jframe jpanel