![]() |
TBX: Floatingwechsel macht Dockprobleme
Hi,
es ist mit dem Code (unten) nur möglich, 1x fehlerfrei, mit einem TBXDockablePanel, zwischen Docked und Undocked zu wechseln: Beim 1. Mal wird es aus dem Dock genommen und auch wieder in den vorherigen (es werden am Ende mehrere TBXDockablePanels sein) Dock zurückgesetzt [gewünscht]. Beim 2. Mal wird es, wie gewünscht, herausgenommen, aber an die Position 0 (X) und 0 (Y) der Form gesetzt, obwohl es wieder in den Dock zurück soll, in dem es zuvor war [ungewünscht]. Ich sehe meinen Fehler nicht, sieht ihn jemand von euch ?
Delphi-Quellcode:
private
olddock : TTBDock; [...] procedure TfrmMain.Button3Click(Sender: TObject); begin // tbxdp_std = TBXDockablePanel olddock := tbxdp_std.CurrentDock; tbxdp_std.Floating := True; end; procedure TfrmMain.Button4Click(Sender: TObject); begin // tbxdp_std = TBXDockablePanel tbxdp_std.Dock(olddock, olddock.ClientRect); tbxdp_std.Floating := False; end; |
Re: TBX: Floatingwechsel macht Dockprobleme
Keiner eine Idee ? :( Wenn bei der Frage eine Unklarheit besetehen sollte, dann sagt diese bitte.
*** edit 10.01.07/21:57 *** Habe es so hinbekommen:
Delphi-Quellcode:
procedure TfrmMain.cbFloatingChange(Sender: TObject);
var i : Integer; begin if cbFloating.ItemIndex = 0 then begin for i := 0 to ComponentCount - 1 do begin if Components[i] is TTBXDockablePanel then begin (Components[i] as TTBXDockablePanel).Floating := False; (Components[i] as TTBXDockablePanel).CurrentDock:=(Components[i] as TTBXDockablePanel).DefaultDock; end; end; end else begin for i := 0 to ComponentCount - 1 do begin if not (Components[i] = tbxdp_std) then // eine kleine Einschränkung, welche man natürlich weglassen könnte begin if Components[i] is TTBXDockablePanel then begin (Components[i] as TTBXDockablePanel).Floating := True; end; end; end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 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