Java Swing ImageIcon图标类的用法(附带实例)
在 Swing 程序设计中,图标经常被添加到标签、按钮等组件上,使用 javax.swing.ImageIcon 类可以依据现有的图片创建图标。
ImageIcon 类实现了 Icon 接口,它有多个构造方法,常用的如下:
【实例】在窗体中演示图标。创建 MyImageIcon 类,并继承 JFrame 类。首先在 MyImageIcon 类中创建 ImageIcon 对象,然后使用 ImageIcon 对象依据现有的图片创建图标,接着使用 public JLabel(String text, int aligment) 构造方法创建一个 JLabel 对象,最后使用 JLabel 对象调用 setIcon() 方法为标签设置图标。

图 1 使用图片文件创建图标
注意,java.lang.Class 类中的 getResource() 方法可以获取本类(编译后的 class 文件)所在的完整路径。
ImageIcon 类实现了 Icon 接口,它有多个构造方法,常用的如下:
- public ImageIcon():创建一个 ImageIcon 对象,然后使用其调用 setImage(Image image) 方法设置图片;
- public ImageIcon(Image image):依据现有的图片创建图标;
- public ImageIcon(URL url):依据现有图片的路径创建图标。
【实例】在窗体中演示图标。创建 MyImageIcon 类,并继承 JFrame 类。首先在 MyImageIcon 类中创建 ImageIcon 对象,然后使用 ImageIcon 对象依据现有的图片创建图标,接着使用 public JLabel(String text, int aligment) 构造方法创建一个 JLabel 对象,最后使用 JLabel 对象调用 setIcon() 方法为标签设置图标。
import java.awt.*; import java.net.URL; import javax.swing.*; public class MyImageIcon extends JFrame { public MyImageIcon() { Container container = getContentPane(); JLabel jl = new JLabel("这是一个 JFrame 窗体"); //创建标签 URL url = MyImageIcon.class.getResource("pic.png"); //获取图片所在的 URL Icon icon = new ImageIcon(url); //获取图片的 Icon 对象 jl.setIcon(icon); //为标签设置图片 jl.setHorizontalAlignment(SwingConstants.CENTER); //设置文字放置在标签中间 jl.setOpaque(true); //设置标签为不透明状态 container.add(jl); //将标签添加到容器中 setSize(300, 200); //设置窗体大小 setVisible(true); //使窗体可见 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); //关闭窗体则停止程序 } public static void main(String args[]) { new MyImageIcon(); } }运行结果如下图所示:

图 1 使用图片文件创建图标
注意,java.lang.Class 类中的 getResource() 方法可以获取本类(编译后的 class 文件)所在的完整路径。
相关文章
- Java Swing.JFrame的用法(附带实例)
- Java Swing JDialog对话框的用法(附带实例)
- Java Swing JOptionPane对话框用法详解(附带实例)
- Java Swing FlowLayout布局管理器的用法(附带实例)
- Java Swing BorderLayout布局管理器的用法(附带实例)
- Java Swing JPanel和JScrollPane面板的用法(附带实例)
- Java Swing JLabel标签的用法(附带实例)
- Java Swing JButton按钮的用法(附带实例)
- Java Swing JRadioButton单选按钮的用法(附带实例)
- Java语句:Java空语句、复合语句和表达式语句