java swing动画效果_java swing gif动画效果
【实例简介】AnimatedGif.zip
【核心代码】
// -*- mode:java; encoding:utf-8 -*-
// vim:set fileencoding=utf-8:
// @homepage@
package example;
import java.awt.*;
import java.util.stream.Stream;
import javax.swing.*;
public final class MainPanel extends JPanel {
private MainPanel() {
super(new BorderLayout());
Box box = Box.createVerticalBox();
Stream.of("no_disposal_specified", "do_not_dispose", "restore_to_background_color", "restore_to_previous")
.forEach(s -> {
Icon i = new ImageIcon(getClass().getResource(s ".gif"));
box.add(new JLabel(s, i, SwingConstants.LEFT));
box.add(Box.createVerticalStrut(20));
});
box.add(Box.createVerticalGlue());
add(box);
setBorder(BorderFactory.createEmptyBorder(20, 40, 20, 40));
setPreferredSize(new Dimension(320, 240));
}
public static void main(String... args) {
EventQueue.invokeLater(new Runnable() {
@Override public void run() {
createAndShowGui();
}
});
}
public static void createAndShowGui() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
ex.printStackTrace();
Toolkit.getDefaultToolkit().beep();
}
JFrame frame = new JFrame("@title@");
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.getContentPane().add(new MainPanel());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
【实例简介】AnimatedGif.zip 【核心代码】 // -*- mode:java; encoding:utf-8 -*- // vim:set fileencoding=utf-8: // @homepage@ package example; import java.awt.*; import java.util.stream.Stream; import javax.swing.*; public final class MainPanel extends JPanel { private MainPanel() { super(new BorderLayout()); Box box = Box.createVerticalBox(); Stream.of("no_disposal_specified", "do_not_dispose", "restore_to_background_color", "restore_to_previous") .forEach(s -> { Icon i = new ImageIcon(getClass().getResource(s ".gif")); box.add(new JLabel(s, i, SwingConstants.LEFT)); box.add(Box.createVerticalStrut(20)); }); box.add(Box.createVerticalGlue()); add(box); setBorder(BorderFactory.createEmptyBorder(20, 40, 20, 40)); setPreferredSize(new Dimension(320, 240)); } public static void main(String... args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { createAndShowGui(); } }); } public static void createAndShowGui() { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) { ex.printStackTrace(); Toolkit.getDefaultToolkit().beep(); } JFrame frame = new JFrame("@title@"); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.getContentPane().add(new MainPanel()); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); } }