java swing中GIF图片显示问题

在显示透明的gif图片的时候,不知道什么原因背景显示有问题,背景显示成系统左上角的图案。但是如果换成静态的png格式的透明图片就没有问题什么repaint(),valid... 在显示透明的gif图片的时候,不知道什么原因背景显示有问题,背景显示成系统左上角的图案。

但是如果换成静态的png格式的透明图片就没有问题

什么repaint(),validate(),setvisible()方法都试过了。下面是代码:
public JComponent getLoadingPanel2() { JPanel contentPanel = new JPanel(); JPanel msgPanel = new JPanel(); int x = (frame.getWidth() - 415) / 2; int y = (frame.getHeight() - 135) / 2; ImageIcon icon = new ImageIcon("images/715.gif"); Image image = icon.getImage().getScaledInstance(100, 100, Image.SCALE_DEFAULT); icon.setImage(image); ImageIcon closeIcon = new ImageIcon("images/window-close.png"); Image closeImage = closeIcon.getImage().getScaledInstance(16, 16, Image.SCALE_DEFAULT); closeIcon.setImage(closeImage); contentPanel.setLayout(null); contentPanel.add(msgPanel); JLabel btnCancel = new JLabel(); btnCancel.setBounds(120, 5, 35, 35); btnCancel.setIcon(closeIcon); btnCancel.setBorder(new EmptyBorder(1, 1, 1, 1)); btnCancel.setBackground(null); btnCancel.setPreferredSize(new Dimension(20, 20)); JLabel imgJLabel = new JLabel(); imgJLabel.setBounds(25, 10, 100, 100); imgJLabel.setIcon(icon); msgPanel.setLayout(null); msgPanel.add(btnCancel); msgPanel.add(imgJLabel); msgPanel.setBounds(0, 0, 150, 120); msgPanel.setLocation(x, y); msgPanel.setBackground(new Color(0, 0, 0, 0)); btnCancel.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { LoadingGlassPane.this.loadCount = 1; LoadingGlassPane.this.hidden(); } }); contentPanel.setBackground(new Color(0, 0, 0, 50)); return contentPanel; }
展开
 我来答
wynnyw123
2014-11-26 · 超过18用户采纳过TA的回答
知道答主
回答量:80
采纳率:100%
帮助的人:38.6万
展开全部
不是程序的问题,是图片的问题。我们这里做美工的都是png图片,没有用gif的。得问问ps的人。放心不是程序问题的。
追问
确实找到png格式的动图了,不过好像在swing不支持,只在火狐浏览器里能动
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式