フォーカス喪失時のイベント - Printable Version +- Curl Global Community (https://communities.curl.com) +-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1) +--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2) +--- Thread: フォーカス喪失時のイベント (/showthread.php?tid=289) |
フォーカス喪失時のイベント - usami - 09-28-2011 TextField等のオブジェクトに対してフォーカス喪失時にFocusOutイベントが発行されますが、このイベントの中である条件の場合フォーカス喪失をキャンセルするといったことはできるのでしょうか? AccessのBeforeUpdateイベントのCancel = trueのような挙動をCurlで実現するためにはどのように記述すればよいのでしょうか? RE: フォーカス喪失時のイベント - c-s - 09-28-2011 cancelはありません。 というのは、FocusOutのタイミングだともう遅いです。 consumeしても、フォーカス移動は中止されません。 方法がないわけではないけれど、問題起こしやすくて、出来れば避けた方がいいと思います。 逆に、他のActiveTraversorはみんなtakes-focus? = falseとかであれば、フォーカス移動はないはずですが。 tabキーとポインタークリックとかにフォーカス変更しない様にすれば、元のままですから。 ActiveTraversalContainerの設定にも色々出来ますが、画面全体作りに気をつけないと駄目ですね。 RE: フォーカス喪失時のイベント - usami - 09-28-2011 > 逆に、他のActiveTraversorはみんなtakes-focus? = falseとかであれば、フォーカス移動はないはずですが。 > tabキーとポインタークリックとかにフォーカス変更しない様にすれば、元のままですから。 > ActiveTraversalContainerの設定にも色々出来ますが、画面全体作りに気をつけないと駄目ですね。 tabキーを押したときやマウスカーソルが項目外に移動した際に項目の入力判定を行い、NGの場合は遷移させないようにしたいのですが、 FocusOutイベントに記述しても元の項目に戻ってくれないので、フォーカス喪失前に判断させたい意向です。 tabキーで遷移した場合なら次項目でshift+tabで戻せばいいですが、マウスで別の項目に遷移されたらもう戻れないのでは?と思います。 |