【实例简介】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);
}
}