2009-10-14 36 views

Trả lời

22

Cơ hội là bạn có hai phiên bản của nhãn JLabel. Một là một biến lớp và một là một biến cá thể đã được thêm vào GUI. Vấn đề là mã của bạn đang cập nhật biến lớp.

Hoặc, có thể nếu bạn không cập nhật biểu tượng trên EDT, bạn có thể gặp sự cố.

Chỉnh sửa: Chỉ đọc lại câu hỏi. Nếu bạn đang nói về một "hình ảnh được tạo ra" mà cần phải được tải lại từ một tập tin, sau đó bạn cần phải thoát khỏi hình ảnh được lưu trữ. Hai cách để thực hiện việc này:

// Using ImageIO 

String imageName = "timeLabel.jpg"; 
imageLabel.setIcon(new ImageIcon(ImageIO.read(new File(imageName)))); 

// Or you can flush the image 

String imageName = "timeLabel.jpg"; 
ImageIcon icon = new ImageIcon(imageName); 
icon.getImage().flush(); 
imageLabel.setIcon(icon); 

Nếu bạn cần trợ giúp thêm, hãy đăng SSCCE.

+0

gì nếu tôi muốn cập nhật hình ảnh từ cơ sở dữ liệu với kiểu blob – Gaurav

2

Tôi thứ hai câu trả lời là có khả năng bạn có hai đối tượng nhãn riêng biệt.

Một khả năng khác là bạn có hai đối tượng biểu tượng tham chiếu cùng một hình ảnh để đặt nó trên nhãn dường như không có ảnh hưởng.

-1

nếu bạn có định nghĩa nhãn mác Nhãn JLabel = new JLabel();

Ý tôi là nhãn mà bạn sử dụng để hiển thị hình ảnh

bên trong hàm sự kiện, lấy nó ra khỏi nó

Các vấn đề liên quan