当前位置: 首页 > 知识库问答 >
问题:

正在验证JOptionPane中的用户输入。显示输入对话框

林鸿彩
2023-03-14

使用JOptionPane。ShowInputDialog,我需要检查用户是否输入int,否则,JOptionPane应该返回错误消息,并提示用户输入正确的数据类型。

同时,如果用户点击取消节目则应返回主菜单。

String weight = JOptionPane.showInputDialog(null, "Enter your weight in Kg: ");
if(weight == null) {
    menuGUI();
} else {
    setWeight(Integer.valueOf(weight));
}

对我如何做到这一点有什么建议吗?

共有1个答案

费子濯
2023-03-14

使用while循环

Integer w = null;
while (true) {
    String weight = JOptionPane.showInputDialog(null, "Enter your weight in Kg: ");
    if (weight == null) {
        break;
    }

    try {
        w = Integer.parseInt(weight);
        break;
    } catch (NumberFormatException e) { 
        JOptionPane.showMessageDialog(null, "Enter a valid integer", "error", JOptionPane.ERROR_MESSAGE);
    }
}

if (w == null) { //The user clicked cancel
    menuGUI();
} else { //Do what you want with w
}
 类似资料:
  • 我已经创建了一个控制台应用程序,现在开始将其转换为摇摆应用程序。我有一个问题,我搜索了很多次,但我没有找到任何答案。 我的应用程序有一个类来验证用户的输入,如果输入错误,它会向控制台发出错误消息。所以我尝试做的是,我有一个Jtextfield并验证这个输入,如果输入错误,它应该给我错误消息。 这是我的Input类,用户可以在其中编写 这是我的输出类方法 我只是想知道我可以使用输入类的验证,还是应该

  • 问题内容: 我是这个C ++世界的新手,正在尝试为数字密码编写输入验证功能。这是我到目前为止所得到的: 对于不正确的值,它工作得很好,但在有效输入时不会中断循环。知道我在这里缺少什么吗?干杯!! James Kanze脚本的ErroR: 新代码: 使用 和 验证作为字符串 感谢所有人(尤其是James Kanze)的帮助。这件事在这里很有效。 那里还有进一步改进的空间吗?干杯!! 问题答案: 这看

  • 根据经验,您永远不应该信任从最终用户收到的数据, 并且应该在充分利用之前对其进行验证。 要给 model 填充其所需的用户输入数据,你可以调用 yii\base\Model::validate() 方法验证它们。该方法会返回一个布尔值,指明是否通过验证。若没有通过,你能通过 yii\base\Model::$errors 属性获取相应的报错信息。比如, $model = new \app\mode

  • 问题内容: 我正在创建用于更改图像的对话框。而不是让用户单击文件输入字段,而是希望立即显示它。输入字段只是一个: 页面加载时是否有显示方式? 如果有一个角度的方法可以做到这一点。 问题答案: 如此处所述,仅InternetExplorer允许以编程方式打开“文件上传”对话框。因此,简短的答案是“否”,没有办法在页面加载时自动打开“文件上传”对话框。 您可能会考虑的长答案是,当用户单击任何内容时都可

  • 问题内容: 因此,我几乎搜索了单词“ string”,“ python”,“ validate”,“ user input”等等的每个排列,但是我还没有找到一种适合我的解决方案。 我的目标是提示用户是否要使用字符串“ yes”和“ no”进行另一笔交易,我认为字符串比较在Python中是一个相当简单的过程,但是有些不起作用对。我使用的是Python 3.X,据我所知,输入应使用字符串而不使用原始输

  • 这是我刚接触Python时就一直在阅读的一本书中的一些代码……这一部分按它应该的方式工作 我的困境是…我需要验证输入是什么…因此,如果用户输入的是一个字符串(比如“五”而不是数字),而不是q或数字,它会告诉他们“很抱歉,“五”是无效的。请重试…然后它会再次提示用户输入。我是Python新手,一直在为这个简单的问题绞尽脑汁 *更新**因为我没有足够的积分来为我自己的问题添加答案,所以我在这里发布这个