2つの異なるアクションリスナーでは、いくつかの条件が満たされたときにダイアログが表示されます。 両方のアクションリスナーがダイアログを表示する必要がある場合は、同時に2つのダイアログが表示されます。しかし、私はそれらを一つずつ表示したい。コードの簡素化invokeLaterを使用してダイアログを1つずつ表示する
:
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JOptionPane.showMessageDialog(getTopLevelAncestor(), "dialog 1");
}
});
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JOptionPane.showMessageDialog(getTopLevelAncestor(), "dialog 2");
}
});
これら2 "SwingUtilities.invokeLaterを" 呼び出しは異なるクラスです。
2つの異なるActionListensが同時に呼び出されるのはなぜですか?デザイン問題のように聞こえます。複数の編集(または何でも)を実行する単一のActionListenerが必要です。次に、それぞれの編集を別々に呼び出して、その表示ダイアログを個別に表示することができます。 – camickr