4

JOptionPane.showConfirmDialog を使用して Java で確認ダイアログを表示しています。このダイアログでは、はい いいえの確認がユーザーに表示されます。これは次のように呼ばれます。

int result = JOptionPane.showConfirmDialog(sessionObjects.getActiveComponent(), 
                 "Are you sure you want to exit?", "My App", JOptionPane.YES_NO_OPTION);

y問題は、これは単純な確認であるため、ユーザーは「はい」と「いいえ」を押すことができるnかということです。現在、ユーザーはボタンをクリックする必要がありますか?

ありがとう、

アンデス

4

4 に答える 4

7

もう 1 つの簡単な方法があります。altプログラムを押し込んでから、同じ方法で放すことができます。

public static void pressAlt(){
    try {
        Robot r = new Robot();
        r.keyPress(KeyEvent.VK_ALT);
    } catch (AWTException ex) {
        Logger.getLogger(ManualDetection.class.getName()).log(Level.SEVERE, null, ex);
    }
}

public static void releaseAlt(){
    try {
        Robot r = new Robot();
        r.keyRelease(KeyEvent.VK_ALT);
    } catch (AWTException ex) {
        Logger.getLogger(ManualDetection.class.getName()).log(Level.SEVERE, null, ex);
    }
}

あなたが呼び出すとき:

 pressAlt();
 int confirm = JOptionPane.showConfirmDialog(... bla bla bla ... 
                                                  ,JOptionPane.YES_NO_OPTION);
 releaseAlt();

あなたが望むように、動作はまったく同じです...

于 2012-09-14T13:15:45.933 に答える
2

ボタンの「ホットキー」(ニーモニック) は既にあります: Alt+Yは「はい」、Alt+Nは「いいえ」です。

Tabヒットしてそれらを切り替えたり、Space押したりすることもできます。

于 2011-01-25T12:10:25.957 に答える
2

いいえ、しかし、それを行うことができる独自の JDialog を作成できます。

于 2011-01-25T12:10:51.447 に答える
0

自動ダイアログクローズの停止を見てください

于 2015-02-06T18:48:16.167 に答える