所以我正在开发一个小项目,我正在寻找如何在JOptionPane中执行此操作的基本代码。我对Java这方面还很陌生。我不是在找很多东西,我只是不知道从哪里开始。
程序应该使用JOptionPane窗口填充屏幕。我需要它像下面的图片一样建模。底行是来自用户的文本输入,当他们点击回车键时,文本应该“刷新/清除”,然后中间的字符串区域应填充用户输入,然后在其下方填充if语句的结果根据代码。
例如:用户输入:“Hello”。 然后文本输入应该刷新,灰色框应该这样做:“用户:你好。” “电脑:你好用户”。
我真的很感激这方面的所有帮助。
答案 0 :(得分:1)
你没有System.out.println()
进入gui组件。不像这样工作。您可以编写控制台程序并使用JOptionPanes来获取用户输入,但输出将在控制台程序中使用。你需要创建一个模仿控制台的gui程序。
这是一个让你开始的基本布局
public class Game extends JFrame {
JTextArea jta = new JTextArea(10, 30);
JTextField jtf = new JTextField(30);
public Game(){
add(jtf, BorderLayout.SOUTH);
add(jta, BorderLayour.CENTER);
jta.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
}
public static void main(String[] args){
SwingUtilities.invokeLater(new Runnable(){
public void run(){
JFrame frame = new Game();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.pack();
frame.setVisible(true);
}
});
}
}
我建议的是因为这是一个非常基本的程序,我会使用一个String命令数组并遍历它们。
例如:
String[] question = {"Do you want to go to school?",
"Do you want to drive or walk?"};
jta.setText(questions[0]);
然后在你的actionPerformed中从文本字段中获取答案。使用像
这样的if语句if (jtf.getText().equals("yes") {
jta.append(questions[1]);
}
等等。如果您不知道我在说什么,我会考虑使用我提到的Swing教程。这些教程中有很多信息。