从JTextArea获取文本,并将其调用到ActionPerformed方法

时间:2015-01-19 21:15:14

标签: java swing jtextarea

好。所以我将开始说这是一个班级的全部。

现在,我在GamePage上显示了一堆按钮,以便在按下这些按钮时打开多个不同的帧。所以。我有按钮全部工作,所有框架打开完美。所以现在,在那些可以打开的框架内,我有一个JTextArea。在JTextArea里面我允许人们输入他们想要的东西,他们按下一个按钮,理论上它将基本上被发送回actionPerformed方法。

但是......我还没有能够让它发挥作用。这是您需要的最低限度。

ACTIONPERFORMED METHOD

public void actionPerformed(ActionEvent event)
{
    if(event.getActionCommand().equals("M 100"))
    {
        math100();
    }
    if(event.getActionCommand().equals("Answer M 100"))
    {
        //THIS IS WHERE IF THEY PUSH THE BUTTON ON THE FRAME, 
        //IT WILL SEND THE JTEXTAREA TEXT BACK TO HERE. THEN IT WILL DISPLAY 
        //IF THE ANSWER IS CORRECT OR NOT. BUT I CANT GET THE TEXT TO BE 
        //SENT BACK HERE....
    }

问题的方法 这是假设将用户输入的JTextArea单词发送回ActionPerformed方法中的特定if语句。

public static void math100()
{
    JFrame m100Frame = new JFrame("100 Point Math Question");
    m100Frame.setSize(350,350);
    m100Frame.setLocationRelativeTo(null);
    JPanel pane = new JPanel();
    m100Frame.setContentPane(pane);

    JLabel question = new JLabel("<html><p><div WIDTH = 320><center>Round 1,291,293 to the nearest thousands, and round 8.472 to the nearest hundredth.</p><p>Put answers in box below, and have the word 'and' between the two answers.</center></width></div></html>");

    JTextArea answerArea = new JTextArea("",10,25);

    JButton answerButton = new JButton("Answer M 100");
    answerButton.addActionListener(new GamePage());


    pane.add(question);
    pane.add(answerArea);
    pane.add(answerButton);

    m100Frame.setVisible(true);
    m100Frame.toFront();
}

我想要它做的是让JTextArea将该区域中的文本发送到if语句后,将该区域中的文本发送到if语句,然后检查他们输入的内容是对还是错。但是我无法将文本发送到if语句。

1 个答案:

答案 0 :(得分:0)

从方法中取出 JTextField ,以便其他方法可以看到它。

示例:

public class ho{

 (private or public) JTextArea answerArea;  

  public ho{.....}


  static method something(){

  ....}

  method actionListener(){ 
  ...}

如果这对您有用,请告诉我......