2012-03-08 6 views
0

netbeansでは、私はJPanelコンポーネント(キーパッドと呼ばれる)を持つJDialogを持っています。私は単純にJDialogにJPanelキーパッドをドラッグ&ドロップし、ネットビーンズがコードを生成しました。キーパッドには、JDialogでActionPerformed(ボタンが押された)を検出しようとしているEnterボタンがあります。これは可能なのですか?どうすればいいですか?java - JDialogでJPanelで実行されたアクションを検出

答えて

3

ボタンにActionListenerを追加する必要があります。 JPanelコンストラクタ内のJDialogへの参照を渡す必要があります。 ActionListenerを実装するか、匿名クラスを使用する必要があります。

enterButton.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e) { 
     // Do something to your JPanel reference 
    } 
}); 
+0

私はそんなにばかです。私のボタンはプライベートなので、私はそれを保護されたものとして設定するのを忘れました...今、私はそれにアクセスしてActionListenerを使用できます。例をありがとう、それを見て私の問題を把握するのに役立ちました。 – jadrijan

+0

@jadrijanよろしくお願いします。 – talnicolas

+0

@jadrijan:私はそれを保護することがあなたを助ける方法を見ていません。これは継承が解決する問題ではありません。それを公開するべきではありません。代わりに、純粋でシンプルな基本的なまともなOOPテクニックを使用して、あるクラスから別のクラスにメッセージを渡す必要があります。 –

関連する問題