Я пытаюсь заполнить переменную из JFrame и испытываю значительные трудности, пытаясь заставить программу ждать выполнения действия, прежде чем продолжить.См. Приведенный ниже код.
Класс реализации JFrame:
public class Frame extends JFrame implements ActionListener {
static Scanner sc = new Scanner(System.in);
static String s;
static JTextField textfield;
static JButton jButton;
public void showFrame() {
JFrame jf = new JFrame();
textfield = new JTextField("", 10);
jButton = new JButton("Enter");
jButton.addActionListener(new Frame());
JPanel panel = new JPanel();
JLabel jl = new JLabel("Options");
jf.setSize(200, 200);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.add(panel);
panel.add(jl);
panel.add(textfield);
panel.add(jButton);
}
@Override
public void actionPerformed(ActionEvent arg0) {
s = textfield.getText();
}
public String reportVal(){
return s;
}
}
Основной файл Java:
Frame frame = new Frame();
frame.showFrame();
Timer t = new Timer(1000, frame);
t.start();
int trials = Integer.parseInt(frame.reportVal());
Я хочу, чтобы испытания заполнялисьзначение из JFrame, но сейчас поток не ждет, поэтому он выполняется до того, как я могу нажать Enter на фрейме.Я не очень много знаю о компонентах swing / awt (ясно), поэтому я ценю любую помощь, которую вы можете оказать.