第六周作业——简单的图像缩放显示
2014-04-15 11:28
666 查看
废话不多说 ,上代码。。
运行效果还可以,上图。
import java.awt.Container; import java.awt.Graphics; import java.awt.Image; import java.awt.MediaTracker; import java.awt.Toolkit; import javax.swing.*; public class ShowImgApp { // static Image img1; public static void main(String arg[]){ ImageFrame frame = new ImageFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); frame.setLocationRelativeTo(null); } } class ImageFrame extends JFrame{ public ImageFrame(){ setSize(WIDTH,HEIGHT); setTitle("缩放显示图像"); //JPanel panel = new JPanel(); //this.add(panel); ImagePanel panel = new ImagePanel(); Container contentPane =getContentPane(); contentPane.add(panel); } public static final int WIDTH=400; public static final int HEIGHT=600; class ImagePanel extends JPanel{ public ImagePanel(){ image = Toolkit.getDefaultToolkit().getImage("sinian.gif"); MediaTracker tracker = new MediaTracker(this); tracker.addImage(image,1); try { tracker.waitForID(1); }catch (InterruptedException exception){} } public void paintComponent(Graphics g){ super.paintComponent(g); int w = image.getWidth(this); int h = image.getHeight(this); g.drawImage(image,5,10,null ); g.drawImage(image,150,40,w/2,h/2,this); g.drawImage(image,10,200,w*2,h*2,this); } private Image image; } }
运行效果还可以,上图。