ドラッグされたコントロールがターゲットの外にリリースされたかどうかを調べたいと思います。FireMonkeyでドラッグ操作が終了したと判断するにはどうすればよいですか?
OnDragEndを使用する必要があると考えられますが、そのイベントは機能しません(FMX.TypesユニットのDragEndプロシージャを呼び出すのを忘れていました)。
代わりに、ドラッグしたコントロールのOnMouseUpを試しました。動作しません。 DragMode = dmAutomaticのときにトリガされません。
最後の手段として、すべてのマウスイベントがそれぞれのコントロールに渡される前にフォームを通過するため、フォーム自体のMouseUpプロシージャをオーバーライドしようとしました。サプライズ:MouseUpプロシージャは、コントロールのDragMode = dmAutomaticのときに呼び出されません。
これは非常に簡単なことですが、実現するのは非常に難しいですが、誰かが実用的な解決策を見つけたことを願っています。
ドラッグモードでは、ドラッグイベントによって最初にキャッチされるため、通常のマウスイベントは失われます。ドラッグイベントがうまくいくまで、誰かが答えを持っていればうれしいです。おそらくバグでしょう。あなたはUpdate 3を持っていますか? –
はい、アップデート3があります。解決策を見つけたら報告します。 – Domus