Java 如何从actionPerformed获取源对象,以便能够使用getText()方法并将文本从JButton输出到字符串文件?

Java 如何从actionPerformed获取源对象,以便能够使用getText()方法并将文本从JButton输出到字符串文件?,java,user-interface,compiler-errors,jbutton,actionlistener,Java,User Interface,Compiler Errors,Jbutton,Actionlistener,我的程序应该将所选JButton的文本输出到控制台。我遇到的问题是,我不知道如何让源对象识别getText()方法,以便我可以执行上述操作 以下是错误代码: Error: cannot find symbol symbol: method getText() location: variable source of type java.lang.Object 以下是程序代码: import java.awt.*; import java.awt.event.*; import ja

我的程序应该将所选JButton的文本输出到控制台。我遇到的问题是,我不知道如何让源对象识别getText()方法,以便我可以执行上述操作

以下是错误代码:

Error: cannot find symbol
  symbol:   method getText()
  location: variable source of type java.lang.Object
以下是程序代码:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class PanelExample extends JFrame implements ActionListener{

  JButton b1;
  JButton b2;
  JButton b3;
  JButton b4;
  JButton b5;
  JButton b6;
  String response;

   public void makePanels() {
        Container c = getContentPane();
        b1 = new JButton("Item 1");
        b2 = new JButton("Item 2");
        b3 = new JButton("Item 3");
        b4 = new JButton("Item 4");
        b5 = new JButton("Item 5");
        b6 = new JButton("Item 6");

        JPanel p1 = new JPanel();
        p1.setLayout(new FlowLayout());
        p1.add(new JButton("Ok"));
        p1.add(new JButton("Cancel"));
        p1.add(new JLabel(response));

        JPanel p2 = new JPanel();
        p2.setLayout(new FlowLayout());
        p2.add(new JLabel("Make a Selection"));

        JPanel p3 = new JPanel();
        p3.setLayout(new BoxLayout(p3, BoxLayout.Y_AXIS));
        p3.add(b1);
        p3.add(b2);
        p3.add(b3);

        JPanel p4 = new JPanel();
        p4.setLayout(new BoxLayout(p4, BoxLayout.Y_AXIS));
        p4.add(b4);
        p4.add(b5);
        p4.add(b6);

        c.setLayout(new BorderLayout());
        c.add(p1, BorderLayout.SOUTH);
        c.add(p2, BorderLayout.NORTH);
        c.add(p3, BorderLayout.WEST);
        c.add(p4,BorderLayout.EAST);  
        b1.addActionListener(this);
        b2.addActionListener(this);
        b3.addActionListener(this);
        b4.addActionListener(this);
        b5.addActionListener(this);
        b6.addActionListener(this);

        pack();
        setVisible(true);
    }

   public void actionPerformed(ActionEvent event){
     Object source = event.getSource();
     String text = source.getText();
     System.out.println(text);
   }


    public static void main(String[] args) {
        PanelExample frame = new PanelExample();
        frame.makePanels();
        frame.setSize(200, 250);
    }

}

在我搜索过的所有帖子中,我都没有找到一篇能够帮助我解决具体问题的帖子。感谢您的帮助。

在action performed方法中创建JButton的对象,并将event.getSource强制转换为JButton。 例如
JButton按钮=(JButton)事件.getSource()

String str = button.getText();
System.out.println(str);