【问题标题】:Checking to see if string has been parsed after event has occured?在事件发生后检查字符串是否已被解析?
【发布时间】:2014-05-25 19:25:54
【问题描述】:

我正在尝试确保用户在此文本框中输入的第一个字符是字母。但是,如果不是,则会弹出一个消息框,通知用户第一个字符不能是数字,而必须是数字。问题是程序完全忽略了事件发生后的代码去检查第一个位置是否有字母。

if (event.getSource() == item2)
        {
            string = String.format("Account number: %s", event.getActionCommand());

            str = string.substring(1);

            try{
                Integer.parseInt(string.substring(0,1));
                parsable = true;
            }catch(NumberFormatException e){
                parsable = false;
            }
            if(parsable == true)
            {
                JOptionPane.showMessageDialog(null, "ENTER THE LETTER CORRESPONDING WITH YOUR ACCOUNT NUMBER AS THE FIRST CHARACTER IN THE TEXT FIELD.");
            }
            /*
            try
            {
                Integer.parseInt(str);
            }
            catch(NumberFormatException e)
            {
                String.format("enter a valid number");
            }
            */
        }

感谢任何帮助。

【问题讨论】:

    标签: java swing event-handling joptionpane parseint


    【解决方案1】:

    因为您使用的是 String.format("Account.... 您的字符串的第一个字符将始终是 Account 的“A”,您必须检查您从 event.getActionCommand() mathod 收到的字符串

    【讨论】:

    • 非常感谢您的帮助
    猜你喜欢
    • 2016-02-20
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-31
    • 1970-01-01
    • 2014-04-01
    • 2019-03-25
    • 1970-01-01
    相关资源
    最近更新 更多