在ShowMessageDialog之后返回上一个ShowInputDialog

时间:2013-03-17 08:57:04

标签: java swing

将有一个ShowInputDialog框供用户键入数字。当用户键入字符时,它将显示MessageDialog框以指示无效输入。

在用户点击MessageDialog框上的“确定”按钮后,如何返回上一个showInputDialog以便用户重新输入数字?

代码:

public static void addStock(Stock s[],int index)
{
    s[index] = new Stock();

    try{
        s[index].setNumber(Double.parseDouble(showInputDialog(null,"Enter number: ")));

    }catch(NumberFormatException e){
        showMessageDialog(null, "Invalid input. Enter digits only.", "Error!",ERROR_MESSAGE);
    }
}

*编辑:这是一个库存系统,使用对话框作为与用户交互的界面。例如,添加,删除,更新系统中的库存。

1 个答案:

答案 0 :(得分:1)

试试这个:

boolean isValSet = false;

while(!isValSet)
{ 
    try {
        String val=JOptionPane.showInputDialog(null,"Enter number: ");
        double parseDouble = Double.parseDouble(val);

        //set you parseDouble to your attribute.
        isValSet=true;
    } catch(NumberFormatException e) {
        JOptionPane.showMessageDialog(null, "Invalid input. Enter digits only.", "Error!",JOptionPane.ERROR_MESSAGE);
    }
}