0

ダイアログが表示されている間に、keyListener を呼び出して keyCode を取得したいと考えています。Dialog を拡張しようとしましたが、keyReleased() をオーバーライドしましたが成功しませんでした。以下は私のコードです。何が問題になったのですか?

public class MyDialog extends Dialog{

public void keyReleased(int keyCode) {
    super.keyReleased(keyCode); //To change body of generated methods, choose Tools | Templates.
    System.out.println("Keycode in Dialog: "+keyCode);
}

}

そして、私のフォームでは、以下のようなカスタムダイアログを使用しています:-

MyDialog dialog  = new MyDialog();
dialog.show("INFO", "TEST CONTENT", "OK", "CANCEL");
4

1 に答える 1

0

ダイアログを使用していません。

show(String, String, String, String)インスタンスメソッドではなく静的メソッドであるため、新しいダイアログインスタンスが作成されて表示されます。

インスタンスメソッド(またはshowDialogのような他のインスタンスメソッド)であるshow()を使用する必要がありますが、実際にコンポーネントを追加してダイアログを「構築」する必要があります。

于 2013-06-21T19:21:16.617 に答える