我试图创建一个浮动对话框,其中包含一个加载器gif图像和一些文本。我有下面的类:如何将ImageIcon添加到JDialog中?
public class InfoDialog extends JDialog {
public InfoDialog() {
setSize(200, 50);
setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
setUndecorated(true);
setLocationRelativeTo(null);
URL url = InfoDialog.class.getClassLoader().getResource("loader.gif");
ImageIcon loading = new ImageIcon(url);
getContentPane().add(new JLabel("Logging in ... ", loading, JLabel.CENTER));
}
}
然而,当我打电话:显示
InfoDialog infoDialog = new InfoDialog()
infoDialog.setVisible(true);
一个空的对话框。 ImageIcon和标签不显示在对话框中。
我在这段代码中做了什么错误?
非常感谢。
如果您停止添加.gif文件,它至少会显示文本?是否抛出任何异常?这对我来说很好。 – BeRecursive 2013-02-10 18:35:58
您在EDT显示infoDialog? – 2013-02-10 19:06:40
还可以考虑在[背景](http://stackoverflow.com/a/4530659/230513)中加载图像。 – trashgod 2013-02-10 19:24:54