Java 如何向JFrame添加多个按钮?
我需要一些基本的东西。 我试过这个:Java 如何向JFrame添加多个按钮?,java,button,jframe,Java,Button,Jframe,我需要一些基本的东西。 我试过这个: import java.*; import javax.swing.*; import java.awt.Container; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.sw
import java.*;
import javax.swing.*;
import java.awt.Container;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import java.awt.event.ActionEvent;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class thisthing
{
public static void main(String[]args)
{
boolean done = false;
while (!done)
{
JFrame frame = new JFrame();
JButton button= new JButton("Add Interest");
frame.add(button);
JButton button1 = new JButton("Other Button");
frame.add(button1);
class AddInterestListener implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
System.out.println("hello, I was pressed");
}
}
class OtherButtonListener implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
System.out.println("The Other button was pressed");
}
}
ActionListener listener = new AddInterestListener();
button.addActionListener(listener);
ActionListener listener1 = new OtherButtonListener();
button1.addActionListener(listener1);
frame.setSize(100, 100);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
}
但当我运行电脑时,它无法在一个窗口上创建两个按钮,所以它尝试创建两个窗口。我真的不知道该怎么形容它,只知道说它一团糟,我做错了什么。
最后,我需要在三角形中添加15个按钮(著名的AP peg游戏项目)……那么,有没有办法重新定位按钮并调整其大小?您可以(建议)使用另一个layoutmanager(或自己定义一个)。或者(确实不是推荐的,也是非常难看的解决方案,但它是有效的):
这会将按钮定位在给定的位置和给定的大小。或者你可以使用
按钮。设置大小(100,30);
按钮。设置位置(20,20);
注意:如果没有layoutmanager,您可以自由定位组件,但默认情况下组件将具有边界(0、0、0、0),因此您必须始终设置位置和大小才能看到任何内容。我之所以提供此解决方案,是因为您提出要求,但您不应该使用此解决方案。我希望“我的计算机崩溃”不是一个准确的描述:)阅读此内容您的计算机崩溃了吗?真正地不,没有,或者你有硬件故障。可能您的程序因错误而中止。进程隔离使得程序不可能使整个计算机崩溃。
frame.setLayout(null);
JButton button = new JButton("Hello world");
button.setBounds(20 , 20 , 100 , 30);
frame.add(button);