程序不是applet,想在JPanel中显示出图片.具体如下:在contentPanel中创建一个JButton,通过jbutton来打开一个对话框,选择需要显示的图片,然后在JPanel中显示出来.(实现了一个继承自JPanel的类panel).
部分代码:
//声明变量
BufferedImage image;
//重载paintComponent方法
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
if(image!=null)
g.drawImage(image,0,0,null);
}
//添加showImage(String imagename)方法
public void showImage(String imagename)
{
//imagename是图片的路径
Image image1=Toolkit.getDefaultToolkit().getImage(imagename);
MediaTracker tracker=new MediaTracker(this);
tracker.addImage(image1,0);
try
{
tracker.waitForID(0);
}
catch(InterruptedException e){}
image=new BufferedImage(image1.getWidth(null),image1.getHeight(null),BufferedImage.TYPE_INT_RGB);
Graphics2D g2=image.createGraphics();
g2.drawImage(image1,0,0,null);
}
...
运行后选择图片,但看不到图片,怎么回事?望高手指教
部分代码:
//声明变量
BufferedImage image;
//重载paintComponent方法
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
if(image!=null)
g.drawImage(image,0,0,null);
}
//添加showImage(String imagename)方法
public void showImage(String imagename)
{
//imagename是图片的路径
Image image1=Toolkit.getDefaultToolkit().getImage(imagename);
MediaTracker tracker=new MediaTracker(this);
tracker.addImage(image1,0);
try
{
tracker.waitForID(0);
}
catch(InterruptedException e){}
image=new BufferedImage(image1.getWidth(null),image1.getHeight(null),BufferedImage.TYPE_INT_RGB);
Graphics2D g2=image.createGraphics();
g2.drawImage(image1,0,0,null);
}
...
运行后选择图片,但看不到图片,怎么回事?望高手指教
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货