Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
Delphi 11 Alexandria
|
AW: FireMonkey Sammelthread
21. Mär 2013, 23:56
"Verschieben Formularweit"...
Ich ermögliche ein Verschieben der HeaderItems von meinem Gitter. Dragmode möchte ich in dem Fall nicht/ungern nutzen und löse das mit MouseDown und MouseMove.
(In gleicher Weise will ich die Breitenänderung durch anfassen am Rand ermöglichen.)
Solange ich über meinem gezogenen Header bin ist alles super (gelber Pfeil).
Wenn ich aber außerhalb des gezogenen HeaderItems gerate greift (natürlich) MouseMove nicht mehr.
Den benachbarten HeaderItems und deren Parent kann ich ja beibringen, dass Sie auf dieses "DragOver" reagieren (roter Pfeil). Das ist mir aber etwas zu umständlich.
Gibt es eine allgemeinere Lösung, dass generell auf das Ziehen reagiert wird egal über welchem Control die Maus gerade ist (Pfeile mit Fragezeichen)? Das soll aber (im FMX!) automatisch passieren, nicht irgendwie in Application-Ereignissen o.ä.
Eigentlich müsste MouseMove bestenfalls auch außerhalb des gezogenen HeaderItems weiter feuern.
Die Mausposition zum Formular habe ich beim Mausklick vor dem Ziehvorgang bereits ermittellt und könnte somit die Verschiebung immer über die Mausposition zum Formular feststellen.
Ich habe mal in den Splitter geschaut, da aber auf die Schnelle noch nichts passendes gefunden, wie man so etwas realisieren kann.
Weiß jemand Rat?
Geändert von stahli (22. Mär 2013 um 10:41 Uhr)
Grund: etwas besser erklärt
|