Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Farbe speichern und wiedergeben (https://www.delphipraxis.net/185064-farbe-speichern-und-wiedergeben.html)

Popov 12. Mai 2015 20:53

AW: Farbe speichern und wiedergeben
 
Zitat:

Zitat von Bjoerk (Beitrag 1301272)
Welchem Fehler?

Der Fehler der vorkommt wenn noch keine Farbe in der Ini gespeichert.

In deinem Code ist kein Fehler, das wollte ich nicht sagen, das ist nur ein Tipp aus der Praxis für die Praxis. Vielleicht wird so klarer was ich meine:
Delphi-Quellcode:
  Panel1.Color := TColor(Ini.ReadInteger('Section', 'Ident', Integer(Panel1.Color)));
...
Man muss keinen Defaut-Wert zuweisen, man nimmt den Default-Wert aus der Variable der man zuweisen will. Ist ein Wert in der Ini, wird der genommen, ansonsten bleibt er der alte.

Perlsau 12. Mai 2015 21:25

AW: Farbe speichern und wiedergeben
 
[QUOTE=Popov;1301273]
Zitat:

Zitat von Bjoerk (Beitrag 1301272)
... das ist nur ein Tipp aus der Praxis für die Praxis.

Dozent mit Praxis? Ich dachte immer, Dozenten seien reine Theoretiker :stupid:

Sir Rufo 12. Mai 2015 21:31

AW: Farbe speichern und wiedergeben
 
Zitat:

Zitat von baumina (Beitrag 1301201)
Ich würde ColorToString und StringToColor verwenden.

Für eine INI, die ja auch lesbar und änderbar sein soll, ist das auch meine bevorzugte Wahl

Popov 12. Mai 2015 21:57

AW: Farbe speichern und wiedergeben
 
Den feinen Unterschied merkt man hier:
Delphi-Quellcode:
  ShowMessage(ColorToString(clWhite));
  ShowMessage(IntToStr(clWhite));

  ShowMessage(ColorToString(clWindowText));
  ShowMessage(IntToStr(clWindowText));

Popov 12. Mai 2015 22:00

AW: Farbe speichern und wiedergeben
 
Zitat:

Zitat von Perlsau (Beitrag 1301281)
Dozent mit Praxis? Ich dachte immer, Dozenten seien reine Theoretiker :stupid:

Es gibt auch Leute die haben einen normalen Job und arbeiten nebenbei, bzw. gelegentlich als Dozenten, weil das ihnen Spaß macht :thumb:

Headbucket 13. Mai 2015 06:05

AW: Farbe speichern und wiedergeben
 
Zitat:

Zitat von Popov (Beitrag 1301294)
Den feinen Unterschied merkt man hier:
Delphi-Quellcode:
  ShowMessage(ColorToString(clWhite));
  ShowMessage(IntToStr(clWhite));

  ShowMessage(ColorToString(clWindowText));
  ShowMessage(IntToStr(clWindowText));

Was soll man hier für einen Unterschied erkennen?

ShowMessage(ColorToString(clWhite)); -> clWhite
ShowMessage(IntToStr(clWhite)); -> 16777215
ShowMessage(ColorToString(clWindowText)); -> clWindowText
ShowMessage(IntToStr(clWindowText)); -> -16777208

Da TColor folgendermaßen definiert ist
Delphi-Quellcode:
type TColor = -2147483648..2147483647;
also alles wie zu erwarten.

Ich muss gestehen, dass ich aber auch meist einfach direkt den Interger-Wert abspeichere.

Grüße

Popov 13. Mai 2015 09:02

AW: Farbe speichern und wiedergeben
 
Zitat:

Zitat von Headbucket (Beitrag 1301305)
Was soll man hier für einen Unterschied erkennen?

Genau den.

Jasocul 13. Mai 2015 09:40

AW: Farbe speichern und wiedergeben
 
Ist das nicht völlig Wurst, wie man es speichert?

Eine INI-Datei manuell zu verändern sollte nicht Sache eines "dummen" Anwenders sein. Also hantieren nur "Fachleute" damit.

Im aktuellen Beispiel: Was steht denn drin, wenn ich keine Standard-Farben nehme und die String-Variante verwende? Vermutlich auch wieder Zahlen.

Für die Handhabung innerhalb des Programms ist es egal, ob da Strings oder Zahlen sind. Die Farben werden richtig gesetzt.

Der Vorteil von Zahlen ist dabei, dass die immer umgesetzt werden können. Zumindest, solange diese im Integer-Bereich sind. Strings sind zwar lesbarer, aber bei manueller Änderung können kleine Tipp-Fehler evtl. sogar eine Exception auslösen (habe ich jetzt nicht extra geprüft). OK, das kann man sicher auch im Programm abfangen. Ein Tippfehler bei einer Zahl, hat höchstens einen belustigenden Effekt.

Ich werde daher weiterhin Farben als Zahlenwert speichern.

Aber jeder, wie er mag. :wink:

baumina 13. Mai 2015 09:54

AW: Farbe speichern und wiedergeben
 
Zitat:

Zitat von Jasocul (Beitrag 1301330)
Also hantieren nur "Fachleute" damit.

Im aktuellen Beispiel: Was steht denn drin, wenn ich keine Standard-Farben nehme und die String-Variante verwende? Vermutlich auch wieder Zahlen.

Dann steht der Hexwert drin, genau so wie die "Fachleute" es aus dem Objektinspektor gewohnt sind.

BadenPower 13. Mai 2015 10:29

AW: Farbe speichern und wiedergeben
 
Mir stellt sich nun aber eine andere Frage:

Hat der TE inzwischen sein "Problem" gelöst und was hat "beim Laden nicht geklappt"?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:54 Uhr.
Seite 2 von 3     12 3      

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