展示动画gif

问题描述 投票:0回答:10
您如何在Java应用程序中显示动画GIF?

java image gif animated-gif
10个回答
31
投票
swing

您可以简单地使用一个:

JLabel

检查它:

5
投票

http://java.sun.com/docs/books/tutorial/uiswing/components/icon.html#getresource

对于加载存储在源软件包(源代码)中的动画gifs,这对我有用:

5
投票
public static void main(String[] args) throws MalformedURLException { URL url = new URL("<url_to_animated_gif>"); Icon icon = new ImageIcon(url); JLabel label = new JLabel(icon); JFrame f = new JFrame("Animation"); f.getContentPane().add(label); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.pack(); f.setLocationRelativeTo(null); f.setVisible(true); }

这为我工作!

4
投票
URL url = MyClass.class.getResource("/res/images/animated.gif"); ImageIcon imageIcon = new ImageIcon(url); JLabel label = new JLabel(imageIcon);

我来这里寻找相同的答案,但是根据最高答案,我提出了一个更容易的代码。希望这将有助于将来的搜索。

public void showLoader(){ URL url = this.getClass().getResource("images/ajax-loader.gif"); Icon icon = new ImageIcon(url); JLabel label = new JLabel(icon); frameLoader.setUndecorated(true); frameLoader.getContentPane().add(label); frameLoader.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frameLoader.pack(); frameLoader.setLocationRelativeTo(null); frameLoader.setVisible(true); }

3
投票

快速而简单的代码:
Icon icon = new ImageIcon("src/path.gif");
            try {
                mainframe.setContentPane(new JLabel(icon));
            } catch (Exception e) {
            }

1
投票
不要忘记让Jframe可见和尺寸。

Icon icon = new ImageIcon("src/image.gif");
JLabel label = new JLabel();

label.setIcon(icon);

我想将.gif文件放入GUI中,但与其他元素一起显示。 .gif文件将来自Java项目,而不是从URL中获取。

0
投票
2-中心将是动画的gif
3-底部将显示从列表选择的元素

0
投票

1 -Interf.java

//Class Name public class ClassName { //Make it runnable public static void main(String args[]) throws MalformedURLException{ //Get the URL URL img = this.getClass().getResource("src/Name.gif"); //Make it to a Icon Icon icon = new ImageIcon(img); //Make a new JLabel that shows "icon" JLabel Gif = new JLabel(icon); //Make a new Window JFrame main = new JFrame("gif"); //adds the JLabel to the Window main.getContentPane().add(Gif); //Shows where and how big the Window is main.setBounds(x, y, H, W); //set the Default Close Operation to Exit everything on Close main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Open the Window main.setVisible(true); } }

2-display.java

Infos:要在您的Java项目中创建一个新的源文件夹(新>源文件夹),然后将.GIF放入其中以将其视为文件。

我将GIF文件带有下面的代码,因此我可以将其导出到JAR项目中(然后是动画)。

urlurl = getClass()。getClassLoader()。getResource(“ fire.gif”);

public class Interface_for { public static void main(String[] args) { Display Fr = new Display(); } }


public class Display extends JFrame { private JPanel container = new JPanel(); private JComboBox combo = new JComboBox(); private JLabel label = new JLabel("A list"); private JLabel label_2 = new JLabel ("Selection"); public Display(){ this.setTitle("Animation"); this.setSize(400, 350); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setLocationRelativeTo(null); container.setLayout(new BorderLayout()); combo.setPreferredSize(new Dimension(190, 20)); //We create te list of elements for the top of the GUI String[] tab = {"Option 1","Option 2","Option 3","Option 4","Option 5"}; combo = new JComboBox(tab); //Listener for the selected option combo.addActionListener(new ItemAction()); //We add elements from the top of the interface JPanel top = new JPanel(); top.add(label); top.add(combo); container.add(top, BorderLayout.NORTH); //We add elements from the center of the interface URL url = getClass().getClassLoader().getResource("fire.gif"); Icon icon = new ImageIcon(url); JLabel center = new JLabel(icon); container.add(center, BorderLayout.CENTER); //We add elements from the bottom of the interface JPanel down = new JPanel(); down.add(label_2); container.add(down,BorderLayout.SOUTH); this.setContentPane(container); this.setVisible(true); this.setResizable(false); } class ItemAction implements ActionListener{ public void actionPerformed(ActionEvent e){ label_2.setText("Chosen option: "+combo.getSelectedItem().toString()); } } }

使用“ file:” forurl

trone this:

JLabel mainLabel = new JLabel(); FileChooser chooser = new FileChooser(); chooser.setFileSelectionMode(JFileChooser.FILES_ONLY); chooser.setMultiSelectionEnabled(false); FileNameExtensionFilter filter = new FileNameExtensionFilter("Image", "png", "jpg", "gif"); chooser.setFileFilter(filter); chooser.setDialogTitle(Lang.T("Open Image") + "..."); int returnVal = chooser.showOpenDialog(getParent()); if (returnVal == JFileChooser.APPROVE_OPTION) { URL url; try { url = new URL("file:" + chooser.getSelectedFile().getPath()); } catch (Exception e) { url = null; } Icon icon = new ImageIcon(url); mainLabel.setIcon(icon); }
在本教程上的发现是如何在Java

0
投票
中显示动画gif

// I suppose you have already set your JFrame Icon imgIcon = new ImageIcon(this.getClass().getResource("ajax-loader.gif")); JLabel label = new JLabel(imgIcon); label.setBounds(668, 43, 46, 14); // for example, you can use your own values frame.getContentPane().add(label);


-1
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.