Java,使用JOptionPane的输入获取双变量?

时间:2014-05-27 22:56:46

标签: java input double joptionpane

提前感谢您的帮助。所以我以前曾多次使用JOptionPane的输入,但这让我感到困惑。我只想使用来自paymentField的输入,该输入从用户获取($ 0.00)一个值。我是否使用动作监听器,如果是这样,是否有其他方式?

在我使用showInputDialog的那一刻,它会带来一个额外的不需要的文本字段。还尝试了showConfirmDialog但似乎无法使用输入的内容。

//method used to display dialog box required add funds to wallet
    public void getWalletBox() {
    String[] cTypes = {"Maestro", "Visa Debit", "Mastercard", "American Express"};
    JComboBox cardType = new JComboBox(cTypes);
    cardType.setFont(new Font("Serifs", Font.BOLD, 16));

    JTextField cardNumField = new JTextField(20); //width of text fields = 25
    cardNumField.setFont(new Font("Serifs", Font.BOLD, 16));

    //formats payment field using dollar prefix
    NumberFormat paymentFormat = NumberFormat.getCurrencyInstance(Locale.US);
    paymentField = new JFormattedTextField(paymentFormat);
    paymentField.setValue(new Double(0.00));
    paymentField.setFont(new Font("Serifs", Font.BOLD, 25));
    paymentField.setEditable(true);
    paymentField.setForeground(Color.green);

    //array of objects used to add labels and fields to joptionpane
    Object[] fields = {
            "Card Type: ", cardType,
            "Card Number: ", cardNumField, 
            "Add: ", paymentField
    };
    JOptionPane.showInputDialog(null, fields, "Wallet", JOptionPane.OK_CANCEL_OPTION);
}`

1 个答案:

答案 0 :(得分:-1)

你必须为此定义自己的JDialog,因为与使用此方法cutomize相比,它非常简单。