0

私のアドベンチャー ゲームには、入力に基づいて何かを出力するためのネストされた if ステートメントがたくさんありますが、私の JTextField は 1 つの入力しか取得せず、その後消えてしまいます。JTextField に無制限の入力を取り、.append to を使用してそれらを jtextarea に表示したいと考えています。if ステートメントのストーリー パスが終了するまで、プログラムがユーザー入力を受け取り続けるようにしたいと考えています。JTextField から入力を取得し、出力を JTextArea に入れてそこに保持する場合。

import java.awt.Dimension;
import java.awt.Font;
import java.awt.KeyboardFocusManager;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.io.IOException;
import java.util.Scanner;
import java.io.Reader; 

import javax.swing.*;
import javax.swing.text.BadLocationException;

    /*JakeBarcelona
    *Date:May 5, 2016
    *Program Name:StoryTester.java
    *Description: 
    */



public class StoryTester extends JFrame
{
    static JTextField input = new JTextField(30);
    static JTextArea fields = new JTextArea(30,50);
    static Story ARoom=new Story();


    public static void main(String[] args) throws BadLocationException
    {
        JFrame frame = new JFrame();

        String story=new String();
        JLabel intro = new JLabel(story); 
        //Sets the JLabels font and color


        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//puts a red x to close it
        Story wow = new Story();
        String introduction=wow.intro();
        //creates array field for text editing
        fields.insert(introduction, 0);

        String name= fields.getText(0,30);




        //creates new Panel
        JPanel myPanel=new JPanel();


        //creates label for text box
        myPanel.setPreferredSize(new Dimension(600,600));
        myPanel.add(fields);
        myPanel.add(input);

        //puts a scroll bar and cancel and ok button
        JScrollPane scroll = new JScrollPane(fields, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
        myPanel.add(scroll);
        int result = JOptionPane.showConfirmDialog(null, myPanel, "Story", JOptionPane.OK_CANCEL_OPTION);

        if(result==JOptionPane.OK_OPTION);
        {

         String jake = input.getText();

         String need = ARoom.storyStatements(jake);
         System.out.println(need);
         fields.append(need);

         }
    }

}
4

1 に答える 1