J2SE读取图片问题
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
public class SwingDemo extends JFrame
{
P p;
public SwingDemo()
{
Container con=this.getContentPane();
p=new P();
con.add(p,BorderLayout.NORTH);
}
public static void main(String args[])
{
SwingDemo f=new SwingDemo();
f.setDefaultCloseOperation(3);
f.setSize(400,300);
f.setVisible(true);
}
class P extends JPanel
{
public void paintComponent(Graphics g)
{
Image image=Toolkit.getDefaultToolkit().getImage( "image//logo.GIF ");
MediaTracker m=new MediaTracker(this);
m.addImage(image,0);
try {
m.waitForID(0);
} catch (InterruptedException e){e.printStackTrace();}
int w=image.getWidth(this);
int h=image.getHeight(this);
g.drawImage(image,0,0,this);
for(int i=0;i*w <getWidth();i++)
for(int j=0;j*h <getHeight();j++)
{
g.copyArea(0,0,w,h,i*w,j*h);
}
}
}
}
大家看!con.add(p,BorderLayout.NORTH);
我用的是这种布局方式!如果要是不用布局就可以解决这个问题!
为什么呢?谁能给解释一下!
还有我应该怎么做?谢谢
------解决方案--------------------你把p设的大一点setPreferredSize(new Dimension(200,200));