Java异常弹出窗口

标签 java exception joptionpane

我的问题是,当用户输入错误的输入时,如何制作弹出消息,这与用正确的颜色填充正确的字符串(rood、groen、oranje)有关,但是当他没有输入时文本字段中的任何内容或错误的名称(字符串)都应该返回错误并弹出窗口。

下面的片段:

Java 类片段:

    int Kleurteller;
    for (Kleurteller = 1; Kleurteller <= 7; Kleurteller++) {
        if (kleur != null) {
            if (kleur.equals("rood")) {
                g.setColor(Color.red);
                g.fillOval(795, 45, 30, 30);
            } else if (kleur.equals("groen")) {
                g.setColor(Color.green);
                g.fillOval(795, 45, 30, 30);
            } else if (kleur.equals("oranje")) {
                g.setColor(Color.orange);
                g.fillOval(795, 45, 30, 30);
            }
            else {
            try{}
            catch (Exception e){
            JOptionPane.showMessageDialog(null, "geen juiste kleur opgegeven, kies rood, groen of oranje");

            }

            }

        }
    }

在我的主类中,我有一个文件路径,因此它将运行它。 (设置内容 Pane )。

当前,当用户在文本字段中输入错误的内容时,不再显示红线。没有出现我的程序需要的弹出屏幕

最佳答案

让 try/catch 消失:

 int Kleurteller;
    for (Kleurteller = 1; Kleurteller <= 7; Kleurteller++) {
        if (kleur != null) {
            if (kleur.equals("rood")) {
                g.setColor(Color.red);
                g.fillOval(795, 45, 30, 30);
            } else if (kleur.equals("groen")) {
                g.setColor(Color.green);
                g.fillOval(795, 45, 30, 30);
            } else if (kleur.equals("oranje")) {
                g.setColor(Color.orange);
                g.fillOval(795, 45, 30, 30);
            }
            else {
                JOptionPane.showMessageDialog(null, "geen juiste kleur opgegeven, kies rood, groen of oranje");
            }
        }
    }

顺便说一句,我建议您始终以小写字母开头变量名称,这样更容易区分类名称和变量名称。

如果您这样做,您甚至不必检查 kleur 是否为 null:

        if ("rood".equals(kleur)) {
            g.setColor(Color.red);
            g.fillOval(795, 45, 30, 30);
        } else if ("groen".equals(kleur)) {
            g.setColor(Color.green);
            g.fillOval(795, 45, 30, 30);
        } else if ("oranje".equals(kleur)) {
            g.setColor(Color.orange);
            g.fillOval(795, 45, 30, 30);
        }
        else {
            JOptionPane.showMessageDialog(null, "geen juiste kleur opgegeven, kies rood, groen of oranje");
        }

关于Java异常弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41299628/

相关文章:

java - 如何在服务器上创建 GEF 图的图像

java - JPA EntityManager 与 Hibernate - 查找和删除不会从数据库中删除数据

Java,如何避免 "might not have been initialized"

java - 为现有项目设计 DAO 模型

scala - Scala 中 NonFatal 和 Exception 的区别

java - 绕过强制 JOptionPane

c++ - 为什么 pthread_exit 会抛出被省略号捕获的东西?

python - try catch 异常时忽略打印语句

java - joptionpane 确认对话框无法识别 no 选项

java - JOptionPane 上的图标