java图像浏览器

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

//显示对象为jpg,gif canvas中画图使用double buffering,使用scroll bar显示,显示区域固定了,可以扩展成按照canvas的大小来显示的模式,因为canvas放在center位置。

import java.awt.*;

import java.awt.event.*;

import java.awt.image.*;

import javax.swing.*;

class Frameext extends Frame

{

}

public class Images extends Frame implements ActionListener, WindowListener ,WindowStateListener

{

//Frameext fr = new Frameext();

Label Label1 = new Label(" ",Label.LEFT); //will show the file name

Button Button1 = new Button("open file");

int xpos,ypos;

int imageHeight;

int w,h;

Image offimg, bg;

Graphics offg;

boolean first=true;

//extends Canvas. This code will use its paint method.

public MyCanvas Canvas1 = new MyCanvas();

static Scrollbar horizontal, vertical; //scrollbar used

FileDialog fd = new FileDialog(this,"Open", FileDialog.LOAD);

Image Image1;

public void initialize()

{

//System.out.println(" dddddd "+this.MAXIMIZED_BOTH);

//this.setLocation(0, 0);

//this.setSize(this.getToolkit().getScreenSize());

this.setSize(600,600);

this.setLocation(30,30);

this.setBackground(Color.lightGray);

Canvas1.setBackground(Color.white);

Canvas1.setSize(580,580);

//ColorChooserDialog colorDialog = new ColorChooserDialog(this, "@fff", this);

this.add ("North", horizontal = new Scrollbar (Scrollbar.HORIZONTAL));

this.add ("East", vertical = new Scrollbar (Scrollbar.VERTICAL));

Panel pa=new Panel();

pa.setBackground(Color.white);

Label1.setBackground(Color.lightGray);

Label1.setAlignment(Label.LEFT);

pa.add(Label1);

pa.add(Button1); //add label and button on panel

this.add("South",pa); //add panel at south

this.add("Center",Canvas1);

this.addWindowListener(this);

this.addWindowStateListener (this);

Button1.addActionListener(this);

try

{

System.out.println ("getsize" + Canvas1.getSize () + "getwidth" + Canvas1.getWidth () +

"getheight " + Canvas1.getHeight ());

}

catch (Exception e)

{System.out.println(e.toString());

}

this.pack();

this.show();

}

void imageload ()

{ fd.setFile("*.jpg;*.gif"); //file speicific

fd.show();

if(fd.getFile() == null)

{

Label1.setText("You have not chosen any image files yet");

}

else

{

String d = (fd.getDirectory() + fd.getFile());

Image1 = Toolkit.getDefaultToolkit().getImage(d);

if(Image1==null)

{System.out.println("image is null of this file:"+ d);

return;

}

Label1.setText(d);

System.out.println("image loaded "+d);

//It is important to use Canvas1 as the ImageObserver.

MediaTracker mt = new MediaTracker(Canvas1); //here should be noticed like the author say

mt.addImage(Image1, 0);

try

{

mt.waitForAll();

}

catch (InterruptedException e)

{

System.out.println(e.toString());

}

w = Image1.getWidth (this);

h = Image1.getHeight (this); //set w and h the image's height and width

System.out.println("image width and height is"+w+" "+h);

if (offimg != null

&& (offimg.getHeight (this)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航