Tìm trong:Webe-CHÍP

Bộ gõ (kiểu Vni/Telex/Viqr)Tắt (Alt+T)Mở (Alt+M)

 
Trang chủ QUÁN LẬP TRÌNH  
Vài gợi ý về cách chế biến món ăn Slide Show
Món ăn Slide Show cho phép hiển thị lần lượt các thành phần gia vị (các hình ảnh) cho thực khách xem một cách tự động. Thực khách chỉ cần lựa chọn trước các gia vị và khoảng thời gian cần thiết để “nếm” từng gia vị, phần còn lại là ngồi chờ và... nếm! Trong bài viết này, đầu bếp Đặng Trần Trí tôi sẽ trình bày cách thức để “chộp” một gia vị (hình ảnh) để ở trong tủ (đĩa cứng) và đưa lên bàn ăn (hiển thị) cho thực khách thưởng thức.
Việc lấy một gia vị từ tủ thức ăn không đơn giản đối với những chiếc tủ Java kiểu cũ, nhưng rất may là từ chiếc tủ có phiên bản 1.4 trở đi, việc này lại khá dễ dàng. Đó là nhờ tính năng mới từ gói javax.imageio. Ta hãy thử xem một thao tác mẫu:
import javax.imageio.*;
...
Image img = ImageIO.read(new File(fileName));
Trong gói javax.imageio có lớp (class) ImageIO cung cấp các phương thức tĩnh (static) cho phép đọc và ghi ảnh với các định dạng khác nhau. Trong ví dụ vừa nêu, fileName là một biến String lưu đường dẫn đến tập tin ảnh cần mở. Sau thao tác trên, ta có được gia vị cần thiết trong tay.
Việc kế tiếp cần làm là dùng một cái mâm (JPanel) và bày gia vị lên mâm này thay vì lên bàn (JFrame). Tại sao không bày lên bàn? Bởi vì bằng cách này ta có thể bày nhiều mâm trên cùng một bàn, không tốt hơn sao? Để có thể đặt gia vị chính xác lên mâm, ta cần có thông tin về bề mặt của mâm (Graphics):
JPanel palImage = new JPanel();
Graphics gr = palImage.getGraphics();
Trong ví dụ trên, mâm có tên là palImage và ta dùng getGraphics() để lấy thông tin về bề mặt mâm. Sau đó làm gì nữa? Trình bày gia vị lên mâm chứ còn gì nữa:
gr.drawImage(img,0,0,null);
Hình 1 minh họa kết quả của kỹ thuật vừa nêu.


H.1

Vậy là xong phần cốt lõi của món ăn: trình bày một gia vị lên bàn ăn. Trong bài viết sau, tôi sẽ trình bày cách thức trình bày nhiều gia vị lần lượt lên bàn ăn. Trong khi chờ đợi, mời các bạn tự khám phá gói javax.imageio trong chiếc tủ Java!
Đặng Trần Trí
(NIIT)

Đầu trang