AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler: IF: Kein Teil eienr Menge (Bedingung)

Ein Thema von SvenLittkowski · begonnen am 29. Jan 2011 · letzter Beitrag vom 2. Feb 2011
Antwort Antwort
SvenLittkowski

Registriert seit: 18. Dez 2004
98 Beiträge
 
#1

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 30. Jan 2011, 23:15
sx2008 und alle anderen: vielen Dank, Ihr habt mir ein sehr großes Stück weitergeholfen!

Es gibt nun noch ein anderes Problem, welches ich lösen muß. Beim Schließen des Programmes werden in der INI-Datei die vom user festgesetzten Farben gespeichert. Mir fällt aber auf, daß einige Farben nicht als beispielsweise "$00FFDDAA" gespeichert werden, sondern beispielsweise als "clBlue". Dies gibt Probleme. Wie kann ich den Farbwert von cl-definierten Farben als $-Werte speichern?
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 30. Jan 2011, 23:19
wenn Du meinen Vorschlag auf #13 verwendest
(StringToColor) hast Du die Farbe in einer TColor Variablen diese kannst Du dann per
'$'+IntToHex(c,8) ausgeben.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
SvenLittkowski

Registriert seit: 18. Dez 2004
98 Beiträge
 
#3

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 30. Jan 2011, 23:47
Ein letztes Problem in Sachen Farbe und Farbverarbeitung vorerst:

Code:
var
 TheColor1, TheColor2: String;
 TColor1, TColor2:     TColor;

(1723) TheColor1:=ColorToString(Label1.Font.Color);
(1724) TheColor2:=ColorToString(Label1.Color);
(1725) IdentToColor(TheColor1,TColor1);
(1726) IdentToColor(TheColor2,TColor2);
gibt mir diesen Fehler:

Zitat von Delphi 7:
[Error] Box1.pas(1725): Types of actual and formal var parameters must be identical
[Error] Box1.pas(1726): Types of actual and formal var parameters must be identical

Hmmm... Woran liegt's?
  Mit Zitat antworten Zitat
Jakunar

Registriert seit: 24. Jan 2011
13 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 31. Jan 2011, 01:50
Das Problem dabei ist, dass die Funktion als folgende deklariert ist:
Code:
function IdentToColor(const Ident: string; var Color: Longint): Boolean;
Ich weiss gerade nicht was fuer Typ TColor explizit ist, ist aber auch egal, denn die Funktion verlangt ausdruecklich den Referenztyp Longintund erlaubt nicht den Typ TColor!

Hab's eben schnell mit TColor getestet und bekam den gleichen Fehler, aber mit LongInt hats funktioniert!
Code:
var
  TColor1: LongInt;
  TheColor1: String;
begin
  IdentToColor(TheColor1, TColor1)
Gruss Jakunar

Geändert von Jakunar (31. Jan 2011 um 01:54 Uhr) Grund: Unklar Formuliert
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 31. Jan 2011, 06:05
Ich weiß nicht ob D7 hier noch ein Problem hat, aber:
Zitat:
Anmerkung: Falls der String-Bezeichner einer Farbe sowohl einen Hexadezimalwert als auch eine Farbkonstante darstellen kann, verwenden Sie die Funktion StringToColor.
ansonsten geht auch
IdentToColor(TheColor1, Integer(TColor1));
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
SvenLittkowski

Registriert seit: 18. Dez 2004
98 Beiträge
 
#6

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 31. Jan 2011, 16:59
Ahhh, DAS hat schon mal weitergeholfen. Vielen Dank an Euch.

Ich muß nun zusehen, wie ich TColor in LongInt umwandle. Wenn ich dafür eine Lösung finde, alleine oder zusammen), dann sollte dies endlich alles funktionieren. Ich schaue moch mal im Internet nach einer Lösung um. Aber wenn hier jemand eine Idee hat, dann würde ich mich sehr freuen.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#7

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 31. Jan 2011, 17:04
Du musst nicht nicht umwandeln nur zuweisen
Longword, LongInt, Int32, TColor, Integer, Cardinal
Int32 , alles 4 Byte im Speicher ....
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
SvenLittkowski

Registriert seit: 18. Dez 2004
98 Beiträge
 
#8

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)

  Alt 31. Jan 2011, 17:14
Danke für Deine schnelle Antwort. Zuweisen... Ich arbeite zwar schon seit Jahren mit Delphi (7), aber mit Speicherzuweisungen habe ich noch nie gearbeitet. Ich weiß ehrlich gesagt nicht, wie ich dies bewerkstelligen soll. Ich hatte gerade folgendes probiert: "ThisColor1:=ColorToString(GlowLabel1.Font.Color); "

Wobei ThisColor1 vom Typ LONGINT ist. Delphi sagt: "[Error] Box1.pas(1726): Incompatible types: 'Integer' and 'String'"

Aber ich habe mir inzwischen natürlich auch eigene Gedanken gemacht: die letzten sechs Ziffern des "$"-Wertes sind ja Hexadezimalziffern, in drei Blöcken. Außerdem weiß ich, daß jede Farbe auch durch eine sehr große Zahl (LongInt?) repräsentiert wird. Es gibt da bestimmt Wege, dieses Dreierpaket an Hex-Werten in so einen Wert umzuwandeln.

Geändert von SvenLittkowski ( 1. Feb 2011 um 04:14 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:50 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