Java按钮布局和显示

时间:2014-04-09 23:44:31

标签: java swing jpanel jbutton actionlistener

我的目标是向控制台显示一条消息,显示我按下的按钮(按钮从1-6开始)。这是我得到的最远的。

CODE:

public class excercise5_1 extends JFrame {


    public excercise5_1() {
        setLayout(new FlowLayout());

        // Create two panels
        JPanel panel1 = new JPanel();
        JPanel panel2 = new JPanel();


        // Add three buttons to each panel
        panel1.add(new JButton(" Button 1 "));
        panel1.add(new JButton(" Button 2 "));
        panel1.add(new JButton(" Button 3 "));
        panel2.add(new JButton(" Button 4 "));
        panel2.add(new JButton(" Button 5 "));
        panel2.add(new JButton(" Button 6 "));


        // Add panels to frame
        add(panel1);
        add(panel2);

    }

    public static void main(String[] args) {
        excercise5_1 frame = new excercise5_1();
        frame.setTitle(" Exercise 12_1 ");
        frame.setSize(600,75);
        frame.setLocationRelativeTo(null); // center frame
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

如果我按下它,我只是不知道如何让它显示“按钮2”。

1 个答案:

答案 0 :(得分:3)

  1. 不要在add方法参数中创建您的JButton内联。所以不是panel1.add(new JButton(...))
  2. 而是在自己的行上创建JButton:而是JButton myButton = new JButton(...);然后panel1.add(myButton);
  3. 使用for循环来简化操作。
  4. 通过其addActioListener(...)方法将ActionListener添加到按钮,并让ActionListener打印ActionEvent的getActionCommand()字符串。 ActionEvent是传递给actionPerformed(ActionEvent e)方法的参数。
  5. 阅读JButton tutorials,因为它已在那里为您拼出。看起来好像你还没有读过JButtons。