JLable中加载的ImageIcon里的图片不能改变大小的呀!
如果想改变大小的话,就要继承JPanel类,自己画一个Image了!import javax.swing.*;
import java.awt.*;
import java.awt.event.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/public class ImageTest {
public static void main(String[] args) {
ImageFrame frame=new ImageFrame();
frame .setDefaultCloseOperation(JFrame .EXIT_ON_CLOSE );
frame.show();
}
}class ImageFrame extends JFrame{
int width=300;
int height=200;
public ImageFrame(){
setTitle("ImageTest");
setSize(width,height);
ImagePanel panel=new ImagePanel();
Container contentPane=getContentPane() ;
contentPane.add(panel); }
}class ImagePanel extends JPanel{
Image image;
String name;
public ImagePanel(){
name="800403.jpg";// 换成当前目录下的一个文件即可!
image=Toolkit.getDefaultToolkit().getImage(name); MediaTracker tracker=new MediaTracker(this);//监视画图片的过程!
tracker.addImage(image,0);
try {
tracker .waitForID(0);
}
catch (InterruptedException e) { } }
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawImage(image,0,0,this.getWidth(),this.getHeight() ,null);
//和JFrame 的大小相同!
}
}
如果想改变大小的话,就要继承JPanel类,自己画一个Image了!import javax.swing.*;
import java.awt.*;
import java.awt.event.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/public class ImageTest {
public static void main(String[] args) {
ImageFrame frame=new ImageFrame();
frame .setDefaultCloseOperation(JFrame .EXIT_ON_CLOSE );
frame.show();
}
}class ImageFrame extends JFrame{
int width=300;
int height=200;
public ImageFrame(){
setTitle("ImageTest");
setSize(width,height);
ImagePanel panel=new ImagePanel();
Container contentPane=getContentPane() ;
contentPane.add(panel); }
}class ImagePanel extends JPanel{
Image image;
String name;
public ImagePanel(){
name="800403.jpg";// 换成当前目录下的一个文件即可!
image=Toolkit.getDefaultToolkit().getImage(name); MediaTracker tracker=new MediaTracker(this);//监视画图片的过程!
tracker.addImage(image,0);
try {
tracker .waitForID(0);
}
catch (InterruptedException e) { } }
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawImage(image,0,0,this.getWidth(),this.getHeight() ,null);
//和JFrame 的大小相同!
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货