FrontPage

 

 
最新更新:

 
人気のページ:

 
最新コメント:

 
727

 

以前、Flex の TextInput についておかしなことを書いていたので訂正。

  • Flex2 で漢字の変換中にも、keyUp イベントが発生する件について
    • http://aoi-project.com/pblog/article.php?id=11
    • [概要] 先日、AIRで作った海外製のTwitterクライアントを使ってみたのですが、漢字変換を確定した時点で、Enterキーを押したとみなされて、発言が書き込まれてしまうのです。

これは、keyUp イベントで、ENTERキーが押されたかを判別しているためで、たぶん、以下のように実装されています。Enter キーは、漢字の入力中でも検出されイベントは起きてしまいます。

<!-- ダメな海外製のプログラム -->
<mx:TextInput id="a_txt" keyUp="check(event)"/>
<mx:Script>
private function check(e:KeyboardEvent):void {
  if (e.keyCode == Keyboard.ENTER) {
    // ここで ENTER の処理
  }
}
</mx:Script>

そこで、漢字の入力中かどうかを判別して、Enter キーの処理を実行すれば良いのです。そのために、textInput イベントを利用して、漢字の入力中かどうか判断しました。しかし、そんなことしなくても、ENTER キーの入力だけが分かれば良いのならば、次のように、enter イベントが用意されているのでこれを利用します。

<mx:TextInput id="a_txt" enter="onEnter()"/>
<mx:Script>
private function onEnter():void {
  // ここで ENTER の処理
}
</mx:Script>

コメント


作成:2008-04-24 00:57:33/更新:2008-07-12 12:16:38

→テキスト形式で見る

くじらぶろぐD by kujirahand RSS

konawiki