チュートリアル  »  ガジェットの作り方  »  ガジェットのドラッグ制御について

ガジェットのドラッグ制御について

GIZMOのバージョンによってドラッグの制御に違いがあります。

GIZMO ver.3.1 以前

ガジェットに対するドラッグ操作は自動的にコアが制御します。

ボタンやテキストフィールドなど、インタラクティブオブジェクト上ではガジェットはドラッグされません。 特定のインタラクティブオブジェクト上でガジェットをドラッグしたい場合は、対象のマウスダウンイベントハンドラで、Gadget.startMove() メソッドを呼び出してドラッグを開始してください。 どこをつかんでもドラッグできるようにしたい場合は、Gadget.autoDragControl プロパティを false に設定します。 いずれの場合も、ガジェットをドラッグするには Gadget.draggable プロパティが true である必要があります。

GIZMO ver.3.2 以降

ガジェットのどこを掴んでもドラッグできます。

しかし、ボタンやスクロールバー、選択可能なテキスト等、特定のユーザーインターフェース上ではガジェットをドラッグさせたくない場合があります。 その場合は、まず Gadget.draggable プロパティを false にし、ガジェット全体のドラッグを無効にします。このままではガジェットがドラックできないので、ドラッグ可能なエリア、たとえば枠になるパーツのマウスダウンイベントハンドラから Gadget.startMove() メソッドを呼び出してドラッグを開始してください。

※ver.3.2 以降では、Gadget.startMove() メソッドGadget.draggable の設定の影響を受けません。

ver.3.1 以前、ver.3.2 以降の両方に対応したガジェットでは、Gizmo.coreVersion の値を調べ、 "3.2.0.0" 以上のときのみ ver.3.2 用の処理を行うようにします。

対応表