Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi FloatingDock verhindern (https://www.delphipraxis.net/54136-floatingdock-verhindern.html)

lizardking 28. Sep 2005 16:21


FloatingDock verhindern
 
Moin zusammen,

irgendwie stehe ich gerade ein wenig auf dem Schlauch :(
Eigentlich 'ne ganz einfach Geschichte : Ich habe 2 Panels in einer Form und in einem der Panels einen Button abgelegt. Beim Button DragKind auf dkDock und DragMode auf dmAutomatic gesetzt. Bei dem anderen Panel DockSite auf true.
Soweit, so gut. Den Button kann ich jetzt super vom einen in das andere Panel ziehen und er dockt auch wie erwartet an. Wenn ich jetzt allerdings den Button verschiebe, dann wird er zu einem FloatingDock. Muss ich also nochmal verschieben, um ihn wieder an das Panel anzudocken.
Kann ich dem Button irgendwie sagen, dass er um Himmels willen nicht als FloatingDock und somit ausserhalb meines Fensters rumschwirren soll ? Oder zumindest, dass wenn das DragDrop ueber dem Panel stattfindet er sich auf jeden Fall dort andocken soll ?
Hab schon mehrere Sachen in den verschiedenen Events ausprobiert, wie z.B. im OnEndDock-Ereignis das Docking zu canceln, wenn als Ziel nicht das Panel angegeben ist - leider erfolglos.

Waere cool, wenn da wer Rat wuesste,

Thx,

Lizzy

Pr0g 6. Okt 2005 13:49

Re: FloatingDock verhindern
 
Was willst du denn machen, vielleicht kann man das ganze auch anders lösen.

lizardking 6. Okt 2005 14:09

Re: FloatingDock verhindern
 
Wollte eigentlich nur diverse Komponenten auf einem oder mehreren Panels frei platzieren koennen. Laesst sich natuerlich auch ohne Docking erreichen, waere aber so viel komfortabler gewesen.

uligerhardt 27. Okt 2008 15:40

Re: FloatingDock verhindern
 
Ist vielleicht in den letzten drei Jahren jemand über eine Lösung gestolpert? :mrgreen:

Uli.

ma2xx 4. Mär 2009 10:35

Re: FloatingDock verhindern
 
Besser spät als nie ... :cyclops:

Um das Abkoppelt von Komponenten zu verhindern, muss man das Ereignis UnUnDock (von der Zielkomponente [z.B. MainForm]) überschreiben und dort Allow:=false zurückgegeben.

... so, jetzt kannst Du weitermachen!

Gruss Ma2xx


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz