嗨我正在尝试制作java桌面应用程序,我试图让jbutton左下角我做了以下代码我不知道我错在哪里我的代码是注意工作
这是我的代码
import java.awt.*;
import java.awt.event.*;
import javax.imageio.ImageIO;
import javax.swing.*;
new complete code
public class ApplicationCloseExample
{
private JButton[] buttons;
private void displayGUI()
{
final JFrame frame = new JFrame("Application Close Example");
JPanel bottomPanel = new JPanel();
bottomPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 5, 5));
for (int i = 5; i < 8; i++) {
buttons[i] = new JButton(Integer.toString(i));
bottomPanel.add(buttons[i]);
}
// JButton button = new JButton("Comment");
// bottomPanel.add(button);
// frame.getContentPane().add(contentPane, BorderLayout.CENTER);
frame.getContentPane().add(bottomPanel, BorderLayout.SOUTH);
frame.pack();
frame.setVisible(true);
}
public static void main(String... args)
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
new ApplicationCloseExample().displayGUI();
}
});
}
}
我怎样才能实现这个目标
答案 0 :(得分:2)
我将假设空指针异常与您的按钮数组有关。检查您是否已正确初始化它。
private JButton[] buttons = new JButton[8];
我将您的代码复制到测试项目中并在经过一些修改后运行它:
public static void main(String[] args) {
final JFrame frame = new JFrame("Application Close Example");
JPanel bottomPanel = new JPanel();
bottomPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 5, 5));
for (int i = 5; i < 8; i++) {
buttons[i] = new JButton(Integer.toString(i));
bottomPanel.add(buttons[i]);
}
frame.getContentPane().add(bottomPanel, BorderLayout.SOUTH);
frame.pack();
frame.setVisible(true);
}
这产生了一个框架,其中三个按钮与窗口的左下方对齐。
答案 1 :(得分:0)
有一个优雅的解决方案,我会给你但也许它有用。使用WindowsBuilder并添加几个按钮,然后你看起来像放置代码。因此,让自己了解带有Flow的setLayout之后的模式。