AWT 图像类



简介

图像控件是表示图形图像的所有图像类的超类。

类声明

以下是java.awt.Image类的声明

public abstract class Image
   extends Object

字段

以下是java.awt.Image类的字段

  • protected float accelerationPriority -- 加速此图像的优先级。

  • static int SCALE_AREA_AVERAGING -- 使用区域平均图像缩放算法。

  • static int SCALE_DEFAULT -- 使用默认的图像缩放算法。

  • static int SCALE_FAST -- 选择一个图像缩放算法,该算法比缩放图像的平滑度更优先考虑缩放速度。

  • static int SCALE_REPLICATE -- 使用体现在 ReplicateScaleFilter 类中的图像缩放算法。

  • static int SCALE_SMOOTH -- 选择一个图像缩放算法,该算法比缩放速度更优先考虑图像平滑度。

  • static Object UndefinedProperty -- 每当获取未为特定图像定义的属性时,都应返回 UndefinedProperty 对象。

类构造函数

序号构造函数和描述
1

Image()

类方法

序号方法和描述
1

void flush()

刷新此 Image 对象正在使用的所有可重建资源。

2

float getAccelerationPriority()

返回加速优先级提示的当前值。

3

ImageCapabilities getCapabilities(GraphicsConfiguration gc)

返回一个 ImageCapabilities 对象,可以查询该对象在指定的 GraphicsConfiguration 上此 Image 的功能。

4

abstract Graphics getGraphics()

创建用于绘制到离屏图像的图形上下文。

5

abstract int getHeight(ImageObserver observer)

确定图像的高度。

6

abstract Object getProperty(String name, ImageObserver observer)

按名称获取此图像的属性。

7

Image getScaledInstance(int width, int height, int hints)

创建此图像的缩放版本。

8

abstract ImageProducer getSource()

获取为图像生成像素的对象。

9

abstract int getWidth(ImageObserver observer)

确定图像的宽度。

10

void setAccelerationPriority(float priority)

为该图像设置有关加速重要性的提示。

继承的方法

此类继承自以下类的方法

  • java.lang.Object

Image 示例

使用您选择的任何编辑器创建以下 Java 程序,例如在D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showImageDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showImageDemo(){
      headerLabel.setText("Control in action: Image"); 

      controlPanel.add(new ImageComponent("resources/java.jpg"));
      mainFrame.setVisible(true);  
   }
	
   class ImageComponent extends Component {

      BufferedImage img;

      public void paint(Graphics g) {
         g.drawImage(img, 0, 0, null);
      }

      public ImageComponent(String path) {
         try {
            img = ImageIO.read(new File(path));
         } catch (IOException e) {
            e.printStackTrace();
         }
      }

      public Dimension getPreferredSize() {
         if (img == null) {
            return new Dimension(100,100);
         } else {
            return new Dimension(img.getWidth(), img.getHeight());
         }
      }
   }
}

使用命令提示符编译程序。转到D:/ > AWT并键入以下命令。

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

如果没有错误,则表示编译成功。使用以下命令运行程序。

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

验证以下输出

AWT Image
awt_controls.htm
广告