我使用以下代码获取InputDialog:
String c = JOptionPane.showInputDialog("Select number",JOptionPane.OK_OPTION);
我还希望用户仅使用0到100之间的IntegerValues。 我通过以下代码处理:
while(notAllowed){
try{
int t =Integer.parseInt(c);
if(t==JOptionPane.CANCEL_OPTION)
{
notAllowed=false;
cancel=true;
}
if(t<=100 && t>0 &¬Allowed)
notAllowed=false;
}
catch( Exception err)
{}
if(notAllowed)
c = JOptionPane.showInputDialog("Only Numbers between 1 and 100 are allowed");
}
现在,如果使用类型数字2,则单击取消按钮,因为JOptionPane.CANCEL_OPTION的值也是2。 那么我怎样才能知道是否点击了取消或输入值是否为2。
答案 0 :(得分:2)
如果用户点击取消,则JOptionPane返回null。否则返回值。 我想出了这个小例子:
public class JOptionPaneTest {
public static void main(String[] args) {
Object obj = JOptionPane.showInputDialog(null, "test", "test-text");
System.out.println(obj);
}
}