Re: 2 Farben auf einer Form mit weichen Übergängen
Danke sehr :D
Delphi hab ich hier auf Arbeit nicht ;) (hab grad Pause und wenig zu tun :D) |
Re: 2 Farben auf einer Form mit weichen Übergängen
Ich nutze diesen Code
Delphi-Quellcode:
Das hilft aber leider nicht, der Hintergrund der einzelnen Controls wird immer noch nicht geändert. Auch .Repaint hilft da nicht.
for i := 0 to ControlCount - 1 do frmMain.Controls[i].Invalidate;
|
Re: 2 Farben auf einer Form mit weichen Übergängen
Du hast recht :gruebel: ...
Delphi-Quellcode:
Das sollte zumindest klappen. Ruf es aber nicht im OnPaint auf, sondern da, wo du auch den Hintergrund änderst.
procedure TMeineForm.MyRepaint;
var I: Integer; begin DisableAlign; For I := 0 to ControlCount - 1 do With Controls[0] do begin Parent := nil; Parent := Self; end; EnableAlign; end; PS: Das "Controls[0]" ist kein Fehler, es muss so sein :wink: (Und wer schlägt mich jetzt, weil die Lösung so doof ist?) |
Re: 2 Farben auf einer Form mit weichen Übergängen
Sehr schön :thumb:
Vielen Dank für deine Hilfe, hast mir bis jetzt sehr geholfen. Nachher gleich testen! |
Re: 2 Farben auf einer Form mit weichen Übergängen
So, ich habs ausprobiert, funktioniert leider nicht :(
Trotzdem ein großes Danke für deine Hilfe :thumb: |
Re: 2 Farben auf einer Form mit weichen Übergängen
Zitat:
|
Re: 2 Farben auf einer Form mit weichen Übergängen
Bei mir eben nicht :D Kann aber auch sein dass ich mich vertan hab. Ich kanns ja nochmal testen.
P.S.: Kannst du mir erklären wieso im Code Controls[0] verwendet wird? Das versteh ich nämlich nicht. :gruebel: |
Re: 2 Farben auf einer Form mit weichen Übergängen
Ganz einfach ^^
Wenn du den Parent eines Controls auf nil setzt und anschließend wieder zuweist, wird das Control aus der Controls-Liste des Parents entfernt und beim zuweisen am Ende der Controls-Liste des Parents wieder gehängt. Das zweite Control rutscht beim entfernen an die erste Stelle - sprich Index 0. Nachdem der Parent auch hier neu gesetzt wurde, rückt das nächste Control nach, usw... |
Re: 2 Farben auf einer Form mit weichen Übergängen
Ach so, ist ja logisch. Danke für die Erklärung!
Ich werds heut abend nochmal testen und meld mich dann. |
Re: 2 Farben auf einer Form mit weichen Übergängen
Wenn ich das Ganze so mache funktioniert es leider nicht...:(
Delphi-Quellcode:
procedure TfrmMain.chkbHorizontalClick(Sender: TObject);
begin if chkbHorizontal.Checked then begin chkbVertikal.Checked := FALSE; frmMain.Repaint; MyRepaint; end; end; procedure TfrmMain.chkbVertikalClick(Sender: TObject); begin if chkbVertikal.Checked then begin chkbHorizontal.Checked := FALSE; frmMain.Repaint; MyRepaint; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz