Form
2
ジェスチャ操作(フリック、スワイプ)を有効にするとスクロールができない
2
UseGestureプロパティに$FLICKまたは$SWIPEのどちらかを指定している場合、スクロール処理ではなくジェスチャ操作(フリック、スワイプ)が優先されます。この挙動は製品の仕様です。
ジェスチャ操作時にGestureイベントが発生しますが、フリックやスワイプのジェスチャ操作によるForm画面のスクロールができません。Form画面をスクロールさせたい場合はUseGestureプロパティを$STDに設定する必要があります。
下記のサンプルでは、UseGestureプロパティの設定によるスクロール操作を確認することができます。
「ジェスチャなし($STD)」を選択した場合はForm画面をスクロールさせることが可能ですが、「スワイプ($SWIPE)」または「フリック($FLICK)」を選択した場合は、Form画面がスクロールされません。その代わりにGestureイベントが発生し、EditBoxに文字列が設定されます。
[ Form1.crs ]
Form Form1 { Width = 384; Height = 600; OptionButton OptionButton1 { X = 21; Y = 27; Width = 280; Height = 37; OptionItem OptionItem1[3]{ Layout = $OPTIMAL; Height = 30; Width = 119; OptionItem1[0].Title = "ジェスチャなし"; OptionItem1[1].Title = "スワイプ"; OptionItem1[2].Title = "フリック"; Function OnTouch(e){ /* UseGestureプロパティを有効にするかの切り替え */ if(e.from.index == 0){ ^.^.Form2.UseGesture = $STD; }else if(e.from.index == 1){ ^.^.Form2.UseGesture = $SWIPE; }else if(e.from.index == 2){ ^.^.Form2.UseGesture = $FLICK; } } }; } GroupBox GroupBox1 { X = 9; Y = 11; Width = 306; Height = 59; Title = "UseGestureプロパティ"; } EditBox EditBox1 { X = 10; Y = 75; Width = 182; Height = 87; } Button Button1 { X = 198; Y = 78; Width = 113; Height = 45; Title = "EditBox初期化"; Function OnTouch( e ) { /* 初期化 */ ^.EditBox1.Value = ""; } } Form Form2 { X = 6; Y = 236; Width = 351; Height = 345; BgColor = $6666FF; TextBox TextBox1[20] { X = 13; Y = 14; Width = 74; Height = 41; LayoutMargin = 10; } if ( !$DESIGNTIME ) { var n; for (n in TextBox1) { TextBox1[n].Value = n+1; } } /* UseGestureプロパティを$SWIPEまたは$FLICKにしている場合に発生するイベント */ Function OnGesture( e ) { if(e.action == $SWIPE){ ^.EditBox1.Value = "スワイプ操作をしました。\r\n" +^.EditBox1.Value ; }else if(e.action == $FLICK){ ^.EditBox1.Value = "フリック操作をしました。\r\n" +^.EditBox1.Value ; } } } Label Label1 { X = 6; Y = 169; Width = 326; Height = 65; Value = "青色の部分で、スクロール、スワイプ、フリック操作を行ってください。\nスワイプ、フリックが選択されている場合、スクロールは行われません。"; } }
管理番号:FormSd_002
Biz-Collections Bizの宝箱 トップへ
Biz/Browser HT・Biz/Browser SmartDevice・Biz/Browser AI TIPS集 トップへ