• 05 «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • » 07
ASOK?
ActionScriptでFlashつくるよ
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
page top

TextFieldをクリックしたら全選択という動作がなかなかできず。

TextFieldを全選択自体は、

// target = 対象TextField
if(Selection.getFocus()!=target){
	Selection.setFocus(target);
}
Selection.setSelection(target.length,0);
というコードでできるが、タイミングのせいでうまくいかない。

上記コードをonSetFocusイベントで実行

Selection.getFocus()は対象TextFieldになっているが、Selection.setSelection()を実行してもちゃんと動かない。
Selection.getBeginIndex()、getEndIndex()とも-1になっている。

onSetFocusイベントから1フレーム遅延で実行

Selection.setSelection()は機能するが、マウスアップイベントが効いてしまうらしく、全選択にならない。

結局以下の方法で実装。

  1. TextField.onSetFocusでMouse.addListener()する。
  2. Mouse.onMouseUpイベントから1フレーム遅延させて、Selection.setSelection(target.length,0);を実行。

まどろっこしい!
きっともっとまともな実装があるはず。誰か教えてください…

関連記事
page top

コメント

管理者にだけ表示を許可する
 

トラックバック
TB*URL
Copyright © 2005 ASOK?. all rights reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。