[FIELDSET][LEGEND]引自:1楼[/LEGEND]
这个例子在我这是可以正常运行的,你看一下报错的提示是什么,或者查看一下你的JDK什么版本,getResource()是Class类提供发方法,在获得class对象后是可以调用此方法的。
除此之外,想在frame里显示图片还有一种更简单常用的方法:
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class DrawImage extends JFrame {
public DrawImage() {
// TODO Auto-generated constructor stub
this.setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("绘制图片");
JLabel l = new JLabel(new ImageIcon("img.jpg"));
add(l);
}
public static void main(String[] args) {
new DrawImage().setVisible(true);
}
}
[/FIELDSET]
回复:package com.lzw;
import java.awt.*;
import java.net.*;
import javax.swing.*;
public class Drawlmage extends JFrame{
Image img;
public Drawlmage(){
URL imgUrl= Drawlmage().class.getResource("img.jpg");
img=Toolkit.getDefaultToolkit().getImage(imgUrl);
this.setSize(440, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(new CanvasPanel());
this.setTitle("saijie");
}
private Object Drawlmage() {
return null;
}
public class CanvasPanel extends Canvas{
public void paint(Graphics g){
super.paint(g);
Graphics2D g2=(Graphics2D) g;
g2.drawImage(img,0,0,this);
}
}
public static void main(String[] args) {
new Drawlmage().setVisible(true);
}
}