Java: Cách sử dụng Icon

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Các thành phần Swing như label hay nút lệnh có thể kết hợp được với icon. Icon là một ảnh và nó có thể được nạp vào một thành phần nào đó. Ảnh có thể có những định dạng khác nhau như GIF, JPEG hay PNG.

An example of using image icons to decorate labels.

API ImageIcon

API Swing cung cấp một lớp tiện ích có tên ImageIcon cho phép ta xác định một ảnh cho thành phần nào đó. Ảnh được đưa vào dưới dạng icon kết hợp với thành phần đó. Vì vậy, để nạp một icon từ các ảnh có sẵn vào thành phần Swing nào đó thì ta cần phải tạo một đối tượng có kiểu lớp ImageIcon.

Cách dễ nhất để kết hợp ảnh với thành phần là sử dụng hàm tạo của lớp ImageIcon. Các hàm tạo phổ biến của lớp ImageIcon được thể hiện trong bảng dưới đây.

Hàm tạo Mô tả
ImageIcon() Tạo một ảnh
ImageIcon(Byte[] image data) Tạo một icon từ một mảng kiểu byte được đọc từ các ảnh JPEG và GIF
ImageIcon(Image image) Tạo một icon từ một đối tượng ảnh image.
ImageIcon(Image image, String description) Tạo một icon image có phần mô tả description
ImageIcon(String filename) Tạo một icon từ file filename
ImageIcon(URL location) Tạo một icon với nguồn là một url location

Đoạn mã sau thể hiện cách nạp một ảnh tới một thành phàn label bằng cách sử dụng các phương thức của ImageIcon.

ImageIcon i = createImageIcon(“pic.gif”, “this is my image”);
Label a = new JLabel(“Image and Text”, i, JLabel.CENTER);
...
Label2 = new JLabel(i)

Còn đoạn mã sau thể hiện cách tạo một icon từ tài nguyên URL.

java.net.URL imgURL = myFile.class.getResource(“mypic.gif”);
...
if (imgURL != null) {
ImageIcon i = new ImageIcon(imgURL);

Tải ảnh vào Applet

Trình duyệt của người dùng có thể không hỗ trợ JavaScript. Trong trường hợp này thì Java applet có thể được triển khai bằng cách sử dụng thẻ <applet> của HTML. JApplet hỗ trợ thư viện đồ họa của Swing. Applet sẽ nạp dữ liệu ảnh từ hệ thống tương tự để phục vụ cho nó. JApplet có thể nạp các ảnh có định dạng GIF hay JPG. Các ảnh có thể được nap bằng cách sử dụng phương thức init().

public void init();

Đoạn mã sau thể hiện cách nạp và hiển thị ảnh vào JApplet.

import java.applet.Applet;
import java.awt.*;
public class animal extends Applet
{
private Image lion;
public void init()
{
lion = null;
}
public void loadImage()
{
try
{ lion = getImage(getDocumentBase(), “image1.gif”);
} catch(Exception e) { }
}
public void paint(Graphics g)
{
if (img == null)
loadImage();
g.drawImage(img, 0, 0, this);
}
}

Xin mời xem ví dụ đầy đủ về một App có sử dụng icon tại bài viết ví dụ IconDemoApp.

» Tiếp: Demo-Calculator-V1
« Trước: Cách sử dụng đường bao (Border)
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!