2015-07-03 67 views
0

所以,我有這種方法;[JAVA]如何調用方法「itemStateChanged」

public void itemStateChanged(ItemEvent event){ 
     if(event.getSource() == temasJogo){ 
      if(event.getStateChange() == ItemEvent.SELECTED){ 
       indiceTema = indiceTemas[ temasJogo.getSelectedIndex() ]; 
      } 

     } 
    } 

只爲這JComboBox

temasJogo = new JComboBox(temas); 
     temasJogo.addActionListener(this); 

我需要它,以便可以選擇遊戲的其他主題修改我的類的屬性。問題是,我無法在任何地方調用此方法。我知道答案會非常簡單,但我確實需要幫助。

回答

1

理論上,itemStateChangedItemListener的一種方法,假設您已經以某種方式實現了interface

爲了擁有它叫,你需要用JComboBox

temasJogo.addItemListener(this); 

爲例來登記ItemListener實例

更多細節

+0

我知道這真的很愚蠢,我使用了一個ActionListener,即使它是一個ItemListener。非常感謝! –

+0

它總是小事情;) – MadProgrammer

1

只實現見How to Use Combo BoxesHow to Write an Item Listener在一個類中的接口。

Ex。

class sample implements ItemListener 

應用監聽器上的JComboBox

 temasJogo = new JComboBox(temas); 
     temasJogo.addItemListener(this); 

之後,下面的功能將被稱爲項目變更時。

public void itemStateChanged(ItemEvent event){ 
     if(event.getSource() == temasJogo){ 
      if(event.getStateChange() == ItemEvent.SELECTED){ 
       indiceTema = indiceTemas[ temasJogo.getSelectedIndex() ]; 
      } 

     } 
    }