2016-04-05 19 views
0

Kullanıcıya etiketini tıklatırsa, etiket metninde bir ad varsa, metin dosyasını açmak istiyorum. Fare tıklatılmış dinleyiciyi kullanmaya çalıştım ancak etiket adını nasıl alacağımı bilmiyorum.java'da fare tıklatıcısı aracılığıyla etiket adını al

MouseListener ml = new MouseListener() { 
     @Override 
     public void mouseReleased(MouseEvent e) {} 

     @Override 
     public void mousePressed(MouseEvent e) {} 

     @Override 
     public void mouseExited(MouseEvent e) {} 

     @Override 
     public void mouseEntered(MouseEvent e) {} 

     @Override 
     public void mouseClicked(MouseEvent e) { 
      System.out.println(e.getText()); 
      } 
    }; 

    label1.addMouseListener(ml); 

    label2.addMouseListener(ml); 

    label3.addMouseListener(ml); 
+0

Salıncak bileşeni Dosya Seçici'yi deneyin: https://docs.oracle.com/javase/tutorial/uiswing/components/filechooser.html –

cevap

1

, etiket metnini demek? Sen

label.getText(); 

DÜZENLEME tarafından kolayca metin alabilirsiniz:

class CustomLabelClickListener implements MouseListener { 

    String labelText; 
    public void MouseLabelClickListner(String text) { 
     labelText = text; 
    } 
... 

@Override 
     public void mousePressed(MouseEvent mouseEvent) { 
      System.out.println(label.getText()) 
     } 
... 
} 

özel dinleyici etiket ekle:

label1.addMouseListener(new CustomLabelClickListener(label1.getText())); 

etiket tıklayarak, metin konsoluna gösterilecektir.

+0

evet, Bunu biliyorum ama birden çok etiket için bir fare tıklatıcısı kullanıyorum –

+0

Daha spesifik olabilir misiniz? Belki ekran görüntüsü ekleyerek veya kod sağlayarak yardımcı olur. –

+0

soruya eklenen kod. –

2

Bu sizin için çalışması gerekir:

bu

kodudur etiketinde İsme göre

label.addMouseListener(new MouseAdapter() { 
    @Override 
    public void mouseClicked(MouseEvent e) { 
      System.out.println(label.getText()); 
    } 
}); 
+0

Evet, bunu biliyorum ama birden çok etiket için bir fare tıklatıcısı kullanıyorum –

İlgili konular