我会用什么代码让用户在弹出窗口中输入他们的成绩?
当按下JButton时,我想弹出一个小框并提示用户输入他们的成绩。此外,是否可以获得输入的double值的值?
感谢您的所有时间。我很感激!
答案 0 :(得分:6)
使用JOptionPane.showInputDialog()。
您可以在http://download.oracle.com/javase/tutorial/uiswing/components/dialog.html#input
找到一个很好的教程答案 1 :(得分:3)
你想要一个JOptionPane。在JButton的ActionListener中使用类似下面的代码片段:
JTextArea textArea = new JTextArea();
textArea.setEditable(true);
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.requestFocus();
textArea.requestFocusInWindow();
scrollPane.setPreferredSize(new Dimension(800, 600));
JOptionPane.showMessageDialog(
(ControlWindow) App.controller.control, scrollPane,
"Paste Info", JOptionPane.PLAIN_MESSAGE);
String info = textArea.getText();
您可以从输出字符串中解析/验证double值。您还可以使用不同的swing组件 - 此示例是可滚动的文本区域。
答案 2 :(得分:3)
最简单的方法可能是使用JoptionPane.showInputDialog(...)
。
但是,请注意,如果有人试图输入除double之外的任何内容,它将会崩溃。
@Override
public void actionPerformed(ActionEvent actionEvent) {
double someNumber = Double.parseDouble(
JOptionPane.showInputDialog(this, "Type in grade:"));
}