修复不会显示的JOptionPane代码?

时间:2016-09-04 14:34:46

标签: java swing joptionpane messagedialog

他是我的代码:

    import java.util.Scanner;
    import javax.swing.JOptionPane;
    public class TicketNumber 
    {
        public static void main(String[] args) 
        {
            Scanner key = new Scanner(System.in);
            System.out.print("Please enter your six digit ticket number: ");
                int tNumber = key.nextInt();
                int lastDigit = tNumber%10;
                tNumber = (tNumber -(lastDigit))/10;
                boolean evaluation = false;
            if (tNumber%7 == lastDigit)
                evaluation = true;
            JOptionPane.showMessageDialog(null, "This number is a " + evaluation + " ticket number.");
        }
    }

当我运行程序时,JOptionPane不显示。我只是希望它显示一个带有true / false结果的消息框,因为我已经设置了它。

2 个答案:

答案 0 :(得分:0)

我记得对话框可能有相对对象,它会在对话框下面,但在你的情况下它是null

JOptionPane.showMessageDialog(null, "This number is a " + evaluation + " ticket number.");

作为一项规则,JOptionPane应该使用一些容器来关联,例如JFrame;

未经过测试

JFrame f=new JFrame();

JOptionPane.showMessageDialog(f, "This number is a " + evaluation + " ticket number.");

如果您还有其他问题,请发表评论

答案 1 :(得分:0)

您可以将JFrame用作配置为 alwaysOnTop 的父级。但是,您的MessageDialog还会显示所有Windows。

...
JFrame f = new JFrame();
f.setAlwaysOnTop(true);
JOptionPane.showMessageDialog(f, "This number is a " + evaluation + " ticket number.");
f.dispose();
...