Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

定数が使えません(VK_A)

JAVA初めて数日の初心者の恐らく初歩的な質問です。
JFRAMEのクラスを継承したクラス内で、

JMenu menuFile = new JMenu("File");
menuFile.setMnemonic(VK_A);

というソースを書いたのですが、コンパイルエラーになってしまいます。
↓エラーメッセージは大体こんな感じです
「VK_Aのシンボルが見つかりません」
java.awt.event.KeyEventで定義されているらしい定数だというのは分かったので、
import java.awt.event.KeyEvent.*;
とソースの上に書いておけば使えるようになるのかと思いましたがそれでもだめでした。
どうすれば宜しいのでしょうか?
よろしくお願いします。

3

回答

4682

閲覧

3件の回答

評価

0

静的なメンバへのアクセスは通常クラス名を修飾し、
KeyEvent.VK_A のように参照します。

Javaのバージョン5からはstatic importというイディオム

追加されていますので、
import static java.awt.event.KeyEvent.*;
のように宣言することでメンバ名のみで参照ができるよう
になっています。
(スレ主さまの記述にstaticを追加した形です)

メンバの可視性も絡んできますので、詳しくは
「静的メンバ 参照」などで検索してみてください。

評価

0

おかげさまで解決できました。
Aさん、ご丁寧な回答ありがとうございました。

評価

0

interfaceなら、implementsしても使えるね。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。