java中image是什么文件,关于java里image的用法
老铁们,大家好,相信还有很多朋友对于java中image是什么文件和关于java里image的用法的相关问题不太懂,没关系,今天就由我来为大家分享分享java中image是什么文件以及关于java里image的用法的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
java.awt.Image类
public Image getImage(URL url, String name)
返回能被绘制到屏幕上的 Image对象。url参数必须指定绝对 URL。name参数是相对于 url参数的说明符。
不管图像存在与否,此方法总是立刻返回。当此 applet试图在屏幕上绘制图像时,数据将被加载。绘制图像的图形图元将逐渐绘制到屏幕上。
参数:
url-给出图像基本位置的绝对 URL。
name-相对于 url参数的图象位置。
返回:
指定 URL处的图像。
public abstract boolean drawImage(Image img, int x, int y, ImageObserver observer)
绘制指定图像中当前可用的图像。图像的左上角位于该图形上下文坐标空间的(x, y)。图像中的透明像素不影响该处已存在的像素。
此方法在任何情况下都立刻返回,甚至在图像尚未完整加载,并且还没有针对当前输出设备完成抖动和转换的情况下也是如此。
如果图像已经完整加载,并且其像素不再发生更改,则 drawImage返回 true。否则,drawImage返回 false,并且随着更多的图像可用或者到了绘制动画另一帧的时候,加载图像的进程将通知指定的图像观察者。
参数:
img-要绘制的指定图像。如果 img为 null,则此方法不执行任何操作。
x- x坐标。
y- y坐标。
observer-转换了更多图像时要通知的对象。
返回:
如果图像像素仍在更改,则返回 false;否则返回 true。
java中的ImageIcon类在哪个包里
java中的ImageIcon类在Serializable, Accessible, Icon包里。
作用:它根据 Image绘制 Icon。可使用 MediaTracker预载根据 URL、文件名或字节数组创建的图像,以监视该图像的加载状态。
里面是相对于你创建的image类的,路径是相对于image类文件的,所以要把图片文件和image.classs类文件放在一起。
简单性:
Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持goto语句,代之以提供break和continue语句以及异常处理。
Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。
Java:Image和BufferedImage的区别是什么
Image是一个抽象类,BufferedImage是Image的实现类。
Image和BufferedImage的主要作用就是将一副图片加载到内存中。
BufferedImage子类描述具有可访问图像数据缓冲区的 Image。BufferedImage由图像数据的 ColorModel和 Raster组成。Raster的 SampleModel中 band的数量和类型必须与 ColorModel所要求的数量和类型相匹配,以表示其颜色和 alpha分量。所有 BufferedImage对象的左上角坐标都为(0, 0)。因此,用来构造 BufferedImage的任何 Raster都必须满足:minX=0且 minY=0。
Java将一副图片加载到内存中的方法是:
String imgPath="D://demo.bmp";
BufferedImage image= ImageIO.read(new FileInputStream(imgPath));
该方法BufferedImage可以获得图片的详细信息,例如:获得图片的宽度:image.getWidth(null);图片只有加载内存中才能对图片进行进一步的处理。
关于java里image的用法
先要设置图片路径,我们将一将背景图片back.jpg放到C盘的img目录下,调用语句如下:
ImageIcon icon=new ImageIcon("C:\\img\\back.jpg),一定要是双反斜杠
然后分别在JComponent里添加图片
JFrame
利用JFrame的一个方法setIconImage(Image image);
由于要用到Image类,所以还得把上面定义的ImageIcon对象转换成Image对象:
Image image=icon.getImage();
然后就可以调用JFrame的setIconImage(image)方法了。
还要注意一点的是,由于有些图片的格式JVM不能识别,所以要转格式,一般为jpg,gif.如把.bmp格式的转换为.jpg,不能简单的把后缀名改了就行,这样照样不能显示。方法很简单,直接用WINDOWS自带的画图工具打开图片,然后另存为时改为.jpg或.gif格式就可以了。
附源代码
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.JTree;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import java.awt.FlowLayout;
public class ImageTest extends JFrame{
ImageIcon icon=new ImageIcon("c:\\img\\system.jpg");
Image image=icon.getImage();
public ImageTest()
{
JMenuBar mb=new JMenuBar();
this.setJMenuBar(mb);
JMenu menu=new JMenu("system");
menu.setIcon(icon);
//JMenuItem item=new JMenuItem("exit",icon);
JMenuItem item=new JMenuItem(icon);
item.setIcon(icon);
JLabel label=new JLabel(icon);
//label.setIcon(icon);
menu.add(item);
mb.add(menu);
DefaultMutableTreeNode root=new DefaultMutableTreeNode();
DefaultMutableTreeNode node1=new DefaultMutableTreeNode();
DefaultMutableTreeNode node11=new DefaultMutableTreeNode();
DefaultMutableTreeNode node12=new DefaultMutableTreeNode();
DefaultMutableTreeNode node2=new DefaultMutableTreeNode();
DefaultMutableTreeNode node21=new DefaultMutableTreeNode();
root.add(node1);
root.add(node2);
node1.add(node11);
node1.add(node12);
node2.add(node21);
JTree jTree1= new javax.swing.JTree(root);
DefaultTreeCellRenderer renderer= new DefaultTreeCellRenderer();
renderer.setOpenIcon(new ImageIcon("C:\\img\\down.jpg"));//展开时节点图标
renderer.setClosedIcon(new ImageIcon("C:\\img\\file.jpg"));//折叠时节点图标
renderer.setLeafIcon(new ImageIcon("C:\\img\\man_small.jpg"));//叶子节点图标
jTree1.setCellRenderer(renderer);
this.add(label);
this.setIconImage(image);
this.add(jTree1);
this.setDefaultCloseOperation(3);
this.setLocation(300,400);
this.pack();
this.setVisible(true);
}
public static void main(String[] args)
{
new ImageTest();
}
}
好了,文章到这里就结束啦,如果本次分享的java中image是什么文件和关于java里image的用法问题对您有所帮助,还望关注下本站哦!