JCheckBoxコンポーネントにリスナーを追加し、リスナーを手動で呼び出したいのですが、どうすればよいですか?
myCheckBox.selected(false)
次に、myCheckBoxリスナーを呼び出します。もっといいアイデアはありますか?
私は少し遅れていることを知っていますが、これでうまくいくはずです:
ItemListener listener = new ItemListener() {
public void itemStateChanged(ItemEvent e) {
//whatever your itemStateChanged() looks like.
}
};
JCheckBox checkBox = new JCheckBox();
checkBox.addItemListener(listener);
次に、手動で呼び出す必要があるときはいつでも:
listener.itemStateChanged(
new ItemEvent(checkBox, ItemEvent.ITEM_STATE_CHANGED, checkBox, 0));
リスナーを匿名で作成した場合でも、次のようにアクセスできます。
checkBox.getItemListeners()[0].itemStateChanged(
new ItemEvent(checkBox, ItemEvent.ITEM_STATE_CHANGED, checkBox, 0));
どの checkBox コンポーネントを使用しているかはわかりません。使用しているフレームワークを教えたり、他の役立つコンテキスト情報を提供したりしません。
しかし、一般的に: リスナーは impl です。インターフェイス。このインターフェイスは、コンポーネント (checkBox) が呼び出す callbackmethod を定義します。
リスナー obj のインスタンスがある場合。このメソッドを直接呼び出すことができます。