我正在尝试制作一个 java 应用程序,在使用 Swing 从用户那里获取一些输入数据之后,我开始运行我的程序的主要计算块(为了清楚起见,不是主要方法)。当这个方法正在运行时,我想显示一些类似“请稍候......不要触摸任何东西”的内容但是,问题是我用来显示这个的 JPanel 在该方法的持续时间内完全变黑正在运行的计算。我试图在方法中间打印 JLabel.getText() 并且它按预期出现。关于为什么文本不会出现的任何想法。下面是我的代码。
JFrame toDisplay = new JFrame("Please Wait");
toDisplay.setAlwaysOnTop(true);
toDisplay.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
toDisplay.setVisible(true);
toDisplay.setLayout(new FlowLayout());
toDisplay.setSize(300,200);
toDisplay.setLocation((int)dimension.getWidth()/3, (int)dimension.getHeight()/3);
JLabel message = new JLabel("<html>CheapTix is currently running<br /> please do not close this box or open the file <br /> Destinations.txt <br /> until instructed to do so</html>");
toDisplay.add(message,BorderLayout.CENTER);
接下来是我运行的程序的主要部分。我尝试将 toDisplay.add(message) 放在程序的主要部分中,但这似乎也不起作用。任何帮助我都会非常感激。