imagecacheicon.java
来自「CroftSoft Code Library是一个开源的可移植的纯Java游戏库」· Java 代码 · 共 100 行
JAVA
100 行
package com.croftsoft.core.animation.icon; import java.awt.*; import java.awt.image.BufferedImage; import java.io.*; import javax.swing.Icon; import com.croftsoft.core.awt.image.ImageCache; import com.croftsoft.core.lang.NullArgumentException; /********************************************************************* * An Icon that uses an ImageCache. * * @version * 2003-03-17 * @since * 2003-03-17 * @author * <a href="http://www.croftsoft.com/">David Wallace Croft</a> *********************************************************************/ public final class ImageCacheIcon implements Icon ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// { private final ImageCache imageCache; private final String imageFilename; // private BufferedImage bufferedImage; ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// public ImageCacheIcon ( ImageCache imageCache, String imageFilename ) ////////////////////////////////////////////////////////////////////// { NullArgumentException.check ( this.imageCache = imageCache ); NullArgumentException.check ( this.imageFilename = imageFilename ); } ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// public int getIconWidth ( ) ////////////////////////////////////////////////////////////////////// { return getBufferedImage ( ).getWidth ( ); } public int getIconHeight ( ) ////////////////////////////////////////////////////////////////////// { return getBufferedImage ( ).getHeight ( ); } ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// public void paintIcon ( Component component, Graphics graphics, int x, int y ) ////////////////////////////////////////////////////////////////////// { graphics.drawImage ( getBufferedImage ( ), x, y, null ); } ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// private BufferedImage getBufferedImage ( ) ////////////////////////////////////////////////////////////////////// { if ( bufferedImage == null ) { try { bufferedImage = imageCache.get ( imageFilename ); } catch ( IOException ex ) { throw new RuntimeException ( ex ); } } return bufferedImage; } ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?