第6周作业-图像缩放显示

来源:互联网 发布:轻钢设计软件 编辑:程序博客网 时间:2024/05/02 09:08

1:程序练手。教材P201 例9-13 缩放显示图像,类名:ShowImg

然后尝试把Applet改写为Application,即含有main主方法的应用程序,

类似于P199 例9-12;

import java.awt.*;import javax.swing.*;public class ShowImg extends JApplet{Image img1;public void init() {img1=getImage(getCodeBase(),"e176.gif");//图片要放在BIN文件里,和CLASS放在同一个文件中}public void paint(Graphics g){int w=img1.getWidth(this);int h=img1.getHeight(this);g.drawImage(img1,5,10,this);g.drawImage(img1, 150, 40, w/2, h/2, this);g.drawImage(img1, 5, 100, w*2, h*2, this);}}


其结果显示如图: 

                           

 

 

把Applet改写为Application,即含有main主方法的应用程序,类似于P199 例9-12;

import java.awt.*;import javax.swing.*;public class ShowImgApp{public static void main(String args[]){ImageFrame frame=new ImageFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.show();}}class ImageFrame extends JFrame{public ImageFrame(){setTitle("ImageShow");setSize(WIDTH,HEIGHT);ImagePanel panel=new ImagePanel();Container contenPane=getContentPane();contenPane.add(panel);}public static final int WIDTH=300;public static final int HEIGHT=200;}class ImagePanel extends JPanel{public ImagePanel(){image=Toolkit.getDefaultToolkit().getImage("e176.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 imageWidth=image.getWidth(this);int imageHeight=image.getHeight(this);g.drawImage(image,5,10,this);g.drawImage(image, 150, 40, imageWidth/2, imageHeight/2, this);g.drawImage(image, 5, 100, imageWidth*2, imageHeight*2, this);int FrameWidth=getWidth();int FrameHeight=getHeight();}private Image image;}


 

其运行结果如图:            

                                      

 

 

 

 

 

0 0