![]() |
Re: Drag'n'Drop
mal noch eine Ergänzung...
Delphi-Quellcode:
- wenn sender=source kommt zugriffsverletzung (control kann nicht sein parent sein ;) )
function isChild(parent:TControl;child:TControl):boolean;
var c:TControl; begin c:=Child.Parent; result:=False; while assigned(c) and not result do begin if c=parent then result:=true; c:=c.Parent; end; end; procedure TForm1.FormDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); begin accept := (sender<>source) and (not isChild(source as TControl,(sender as TControl))) and (sender is TWinControl); end; - man darf das Parent nicht in sein client droppen (isChild-Funktion), sonst AV - der sender (= TargetControl) muss ein TWinControl sein, sonst gibt es auch Fehler (z.B. wenn man auf ein TLabel zieht) (vermutl. invalidCast to TWinControl) Gruß Frank |
Re: Drag'n'Drop
Danke Frank. Auch das wird mir helfen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 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