0

テキスト ボックスがあり、テキスト ボックスがフォーカス ゲインのときにダイアログ ボックスを表示したいと考えています。だから私は次のコードを書きました。しかし、ダイアログボックスが破棄されると、ダイアログボックスが再び表示されます。改行でデバッグして確認しようとしました。その時は複数回実行されませんが、通常モードでは複数回実行されるため、ダイアログボックスが2回表示されます...

txt1.addFocusListener(new FocusListener(){

    @Override
    public void focusGained(FocusEvent e) {

        myform f = new myform(null,true);
        f.setLocationRelativeTo(null);
        f.setVisible(true);
        if("OK".equals(f.button_state)){
            txt2.requestFocus();   
        }
    }

    @Override
    public void focusLost(FocusEvent e) {                
    }

});

ダイアログボックスを表示する前に配置するとtxt2.requestFocus()、複数の実行は発生しません。しかし、私は確信していません。カーソルを に保持する必要があったためですtxt1

何か思い当たることはありますか..>

4

1 に答える 1