Biz/Browserに関する障害レポート
10135 | HtmlViewにフォーカスを当てると、SetFocusメソッドで他のオブジェクトにフォーカス移動ができない
|
||||||||
対象バージョン | Biz/Browser V ver5.0.0.0 〜 Biz/Browser V ver5.0.1.1 |
||||||||
障害内容 |
HtmlViewオブジェクトへフォーカスを当てた後、HtmlViewオブジェクトのValueプロパティのセットと、他のオブジェクトに対するSetFocusメソッドの実行を一連の処理で行った場合、HtmlViewオブジェクトからフォーカスが移動しない。 下記スクリプトでは、HtmlViewにValueを設定した後、TextBoxにフォーカスを移動する、という動作をボタン押下で行っているが、HtmlViewをクリックしフォーカスを当てた後にボタンを押下すると、TextBoxへのフォーカス移動が起こらない。
[サンプルスクリプト]
HtmlView HtmlView1 { X = 15; Y = 12; Width = 333; Height = 57; } TextBox TextBox1 { X = 15; Y = 84; Width = 333; Height = 23; TabIndex = 10; Function OnGetFocus( e ) { BgColor = $CCFFCC; } Function OnLostFocus( e ) { BgColor = $STD; } } TextBox TextBox2 { X = 15; Y = 117; Width = 333; Height = 23; TabIndex = 20; Function OnGetFocus( e ) { BgColor = $CCFFCC; } Function OnLostFocus( e ) { BgColor = $STD; } } Button Button1 { X = 16; Y = 187; Width = 78; Height = 32; AltKey = $F02; Title = "F2"; Function OnTouch( e ) { /* HtmlViewへのvalueのセット */ ^.HtmlView1.value = "<html><body>サンプル</body></html>"; /* SetFocusメソッドの実行 */ ^.TextBox2.SetFocus(); } } ※ フォーカス移動対象のオブジェクトのTabIndexプロパティが、HtmlViewオブジェクトのTabIndexプロパティの 値より小さい場合に現象が発生しやすい。 |
||||||||
要因 |
HTMLViewのLostFocusの処理が不完全だったため、HTMLViewにValueを設定した際、強制的にフォーカスが戻されていた。 Biz/Browser内部の処理順によりHTMLViewへのValue値の反映がSetFocusより早く実行されると、後に実行されたSetFocusが有効となるが、その逆で実行された場合、HtmlViewへフォーカスが戻される現象が発生する。 |
||||||||
対処方法 |
| ||||||||
改修バージョン |
Biz/Browser V Ver 5.0.2.0 |
||||||||