Frage

Ich möchte herausfinden, ob außerhalb eines jeden Ziels eine schleppte Kontrolle freigelassen wurde.

Man würde denken, dass Ondagend verwendet werden sollte, aber dieses Ereignis funktioniert nicht (sie haben vergessen, das Dragend -Verfahren in der Einheit des FMX.Types aufzurufen).

Als Alternative versuchte ich OnmouseUp für die schleppte Kontrolle. Funktioniert nicht. Wird nicht ausgelöst, wenn DragMode = dmautomatic.

Als letzter Ausweg habe ich versucht, das Mausup -Verfahren des Formulars selbst zu überschreiben (da alle Mausereignisse das Formular durchlaufen, bevor er an die jeweilige Kontrolle übergeben wird). Überraschung: Das Mausup -Verfahren wird nicht aufgerufen, wenn der Steuerelement DragMode = dmautomatic.

Erstaunlich, wie etwas so etwas so einfach ist, ist das extrem schwer zu erreichen, aber ich hoffe, dass jemand eine funktionierende Lösung gefunden hat.

War es hilfreich?

Lösung

Es ist möglich, die Dragleave -Methode des Formulars zu überschreiben. Diese Methode ist für alle Objekte erforderlich, die außerhalb eines Zielbereichs fallen gelassen werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top