Re: Q)TABキー押下を捕らえたい.
こんにちは。
"Kiyomi Yamazaki" <kiyomiy@sendai.ai-com.co.jp> wrote in message news:brb7qs$djb$1@nn-tk102.ocn.ad.jp...
>
> > Microsoft Windows の Internet Explorer でJDK1.3ということなら
> > Sunのプラグインを利用されているということでしょうか。
> ●そのとおりです.
私の手元で次のコードを Windows版 Sun J2SE の
java version "1.4.1_02-er" の状態で試してみました。
public class Applet3 extends java.applet.Applet {
public void init() {
enableEvents( java.awt.AWTEvent.KEY_EVENT_MASK );
}
public void processKeyEvent( java.awt.event.KeyEvent e ) {
System.out.println(e);
}
}
appletviewer、IE プラグインのどちらも
「a」「b」「c」とタイプすると、コンソールに次のように表示されます。
ちなみに「tab」を押しても何も反応しません。
java.awt.event.KeyEvent[KEY_PRESSED,keyCode=65,keyChar='a',keyLocation=KEY_LOCAT
ION_STANDARD] on panel0
java.awt.event.KeyEvent[KEY_TYPED,keyCode=0,keyChar='a',keyLocation=KEY_LOCATION
_UNKNOWN] on panel0
java.awt.event.KeyEvent[KEY_RELEASED,keyCode=65,keyChar='a',keyLocation=KEY_LOCA
TION_STANDARD] on panel0
java.awt.event.KeyEvent[KEY_PRESSED,keyCode=66,keyChar='b',keyLocation=KEY_LOCAT
ION_STANDARD] on panel0
java.awt.event.KeyEvent[KEY_TYPED,keyCode=0,keyChar='b',keyLocation=KEY_LOCATION
_UNKNOWN] on panel0
java.awt.event.KeyEvent[KEY_RELEASED,keyCode=66,keyChar='b',keyLocation=KEY_LOCA
TION_STANDARD] on panel0
java.awt.event.KeyEvent[KEY_PRESSED,keyCode=67,keyChar='c',keyLocation=KEY_LOCAT
ION_STANDARD] on panel0
java.awt.event.KeyEvent[KEY_TYPED,keyCode=0,keyChar='c',keyLocation=KEY_LOCATION
_UNKNOWN] on panel0
java.awt.event.KeyEvent[KEY_RELEASED,keyCode=67,keyChar='c',keyLocation=KEY_LOCA
TION_STANDARD] on panel0
同じクラスファイルをIE内蔵のMicrosoft VM 5.0.0 で試してみると
期待したtabキーのイベントが取得できます。
VMの実装によって違いがあるとみなすしかないですね。
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735