JOptionPane.showInputDialog 总是 returns 空
JOptionPane.showInputDialog always returns null
我想从对话框中访问选定的值,只是为了测试我是否可以,我目前正在使用 "System.out.print(selectedValue)"。似乎这个值总是 "null"。如何让上述功能打印出我在对话框中选择的任何内容?
代码:(注意我也在学习多文件项目,这就是为什么 "package" 和东西看起来有点奇怪)
package classfolder;
import java.applet.*;
import java.awt.*;
import javax.swing.*;
public class openWindow
{
public Object selectedValue;
public openWindow()
{
Object[] Categories = { "First", "Second", "Third" };
Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input", JOptionPane.INFORMATION_MESSAGE, null, Categories, Categories[0]);
}
}
import classfolder.*;
public class master
{
public static void main(String[] arg)
{
openWindow window = new openWindow();
System.out.println(window.selectedValue);
}
}
我从控制台得到的:
...address...>java master
null
这一行
Object selectedValue = JOptionPane.showInputDialog(...);
声明一个名为 selectedValue
的新局部变量并将其设置为 showInputDialog
的结果。这不会影响您的实例变量 selectedValue
- 它是一个不同的变量。
如果你想给你的实例变量赋值,你不需要重新声明它;所以将行更改为
selectedValue = JOptionPane.showInputDialog(...);
我想从对话框中访问选定的值,只是为了测试我是否可以,我目前正在使用 "System.out.print(selectedValue)"。似乎这个值总是 "null"。如何让上述功能打印出我在对话框中选择的任何内容?
代码:(注意我也在学习多文件项目,这就是为什么 "package" 和东西看起来有点奇怪)
package classfolder;
import java.applet.*;
import java.awt.*;
import javax.swing.*;
public class openWindow
{
public Object selectedValue;
public openWindow()
{
Object[] Categories = { "First", "Second", "Third" };
Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input", JOptionPane.INFORMATION_MESSAGE, null, Categories, Categories[0]);
}
}
import classfolder.*;
public class master
{
public static void main(String[] arg)
{
openWindow window = new openWindow();
System.out.println(window.selectedValue);
}
}
我从控制台得到的:
...address...>java master
null
这一行
Object selectedValue = JOptionPane.showInputDialog(...);
声明一个名为 selectedValue
的新局部变量并将其设置为 showInputDialog
的结果。这不会影响您的实例变量 selectedValue
- 它是一个不同的变量。
如果你想给你的实例变量赋值,你不需要重新声明它;所以将行更改为
selectedValue = JOptionPane.showInputDialog(...);