显示图像
可以使用ImageIcon类从文件读取图像
可以使用Graphics类的drawImage方法显示这个图像
可以再进一步,从一个窗口中平铺显示图像,先在左上角显示图像的一个副本,然后使用copyArea调用将其复制到整个窗口:
案例:平铺显示图形的窗口
package image;
import javax.swing.*;
import java.awt.*;public class ImagePanel extends JPanel {private Image image;public ImagePanel(Image image) {this.image = image;}@Overrideprotected void paintComponent(Graphics g) {super.paintComponent(g);if (image != null) {g.drawImage(image, 0, 0, null);}}public void setImage(Image image) {this.image = image;repaint();}public static void main(String[] args) {JFrame frame = new JFrame("Swing Image Example");Image image = new ImageIcon("/JavaCore1/src/image/circle.png").getImage(); // 替换为你的图片路径ImagePanel imagePanel = new ImagePanel(image);frame.getContentPane().add(imagePanel);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400, 300);frame.setVisible(true);}
}
未完待续。。。
java.awt.Graphics 1.0
- boolean drawImage(Image img, int x,int y, ImageObserver observer)
- boolean drawImage(Image img, int x,int y,int width,int height,ImageObserver observer),绘制一个不缩放或缩放的图像,注意,这个调用可能会在图像绘制完毕前就返回,回向observer对象通知绘制的进展,这在很久以前是一个有用的特性,不过现在只需要传递null作为观察者就可以了。
- void copyArea(int x,int y,int width, int height,int dx,int dy),复制屏幕的一个区域,dx和dy是原始区域到目标区域的距离。