21xrx.com
2025-03-24 07:42:33 Monday
文章检索 我的文章 写文章
如何在Java中添加图片
2023-06-17 17:10:44 深夜i     12     0
Java 图片 AWT Swing JavaFX

在Java中添加图片可以为程序增加装饰效果、增强用户交互性和展示更多信息。那么如何在Java中添加图片呢?

第一种方法是使用AWT和Swing库中的Image类。通过Image类可以将外部图片文件或内部图片资源添加到Swing组件中。

示例代码:

import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class ImageExample extends JFrame {
  
  private JPanel panel;
  private Image image;
  
  public ImageExample() {
    super("Image Example");
    panel = new JPanel() {
      @Override
      public void paintComponent(Graphics g) {
        super.paintComponent(g);
        //绘制图片
        g.drawImage(image, 0, 0, this);
      }
    };
    //获取图片资源
    image = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/resources/image.jpg"));
    //设置窗口大小
    setSize(400, 300);
    //添加JPanel
    add(panel);
  }
  
  public static void main(String[] args) {
    ImageExample example = new ImageExample();
    //显示窗口
    example.setVisible(true);
  }
}

第二种方法是使用JavaFX中的ImageView类。通过ImageView类可以将外部图片文件或内部图片资源添加到JavaFX中的场景图中。

示例代码:

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.stage.Stage;
public class ImageViewExample extends Application {
  
  @Override
  public void start(Stage stage) throws Exception {
    //获取图片资源
    Image image = new Image(getClass().getResourceAsStream("/resources/image.jpg"));
    ImageView imageView = new ImageView(image);
    Group root = new Group(imageView);
    Scene scene = new Scene(root);
    //设置窗口大小
    stage.setWidth(400);
    stage.setHeight(300);
    //设置场景
    stage.setScene(scene);
    //显示窗口
    stage.show();
  }
  
  public static void main(String[] args) {
    launch(args);
  }
}

通过上述两种方法可以实现在Java中添加图片。在实际开发过程中,可以根据需求选择不同的方法。

  
  

评论区