Tôi có mã có bố cục lưới và hai hình ảnh JLabel. Tôi không phải một số văn bản xuất hiện mỗi khi tôi cuộn qua từng hình ảnh. Tôi quen thuộc về cách làm điều này khi hình ảnh không phải là một JLabel, nhưng đã tìm kiếm trên tất cả các trang web để tìm cách làm điều này trong khi nó là một JLabel chưa được đặt tên. Hai hình ảnh tôi wan't có, với cuộn riêng biệt so với thông điệp là:Rollover trên JLabel bao gồm hình ảnh trong bố cục lưới?
ImageIcon(getClass().getResource("giraffe.png"));
Icon windows = new ImageIcon(getClass().getResource("windows.png"));
Đây là mã của tôi:
public class giraffe implements ActionListener{
public void actionPerformed(ActionEvent event) {
JOptionPane.showMessageDialog(null,
"Press ok, and see the amazing giraffe outside a window!");
JDialog giraffewindow = new JDialog();
Icon giraffe = new ImageIcon(getClass().getResource("giraffe.png"));
Icon windows = new ImageIcon(getClass().getResource("windows.png"));
giraffewindow.setLayout(new GridLayout(1, 2, 0, 0));
giraffewindow.add(new JLabel (windows));
giraffewindow.add(new JLabel (giraffe));
giraffewindow.pack();
giraffewindow.setTitle("GIRAFFE!");
giraffewindow.setVisible(true);
giraffewindow.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
/*
* I want to have a rollover on EACH IMAGE so that when they rollover the image you see different text.
*/
}
Cảm ơn bạn rất nhiều vì thời gian bạn đang dùng cho việc đọc này, Tôi thực sự đánh giá cao những nỗ lực bạn đang đưa vào giúp một lập trình viên đồng nghiệp!
Tôi đoán bạn sẽ cần một 'MouseListener' để theo dõi các sự kiện' mouseEntered' và 'mouseExited' và thay đổi văn bản của nhãn cho phù hợp. Bắt đầu với [Cách viết một trình nghe chuột] (http://docs.oracle.com/javase/tutorial/uiswing/events/mouselistener.html) – MadProgrammer
'Tôi quen thuộc về cách thực hiện điều này khi hình ảnh không phải là một JLabel '- làm thế nào bạn sẽ làm điều này? – camickr
@MadProgrammer Anh ấy sẽ không phải tạo ra lớp riêng của mình để mở rộng JLabel, sau đó triển khai MouseListener từ đó? –