Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Fehler: IF: Kein Teil eienr Menge (Bedingung) (https://www.delphipraxis.net/157921-fehler-if-kein-teil-eienr-menge-bedingung.html)

SvenLittkowski 29. Jan 2011 21:08

Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
Code:
for Runde:=0 to Length(TheColor1) do
if(TheColor1[1]<>'$')and(Ord(TheColor1[Runde])<>[48..57])and(Ord(TheColor1[Runde])<>[65..70]) then ...
Dieser Code erzeugt bei mir die folgende Fehlermeldung:
Zitat:

Zitat von Delphi 7
[Error] Box1.pas(350): Incompatible types: 'TObject' and 'Char'
[Error] Box1.pas(350): Incompatible types: 'procedure, untyped pointer or untyped parameter' and 'Integer'

Ich will mit diesem Code testen, ob ein String ("TheColor1") als Farbe (z.B. "$00004F4F") interpretiert werden kann. Was mache ich falsch (kann die Fehlermeldungen leider nicht ausarbeiten)?

Bummi 29. Jan 2011 21:13

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
ein befremdlicher Ansatz aber was Du suchst ist wohl
Delphi-Quellcode:
not (Ord(TheColor1[Runde]) in [65..70])

rollstuhlfahrer 29. Jan 2011 21:14

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
von der Struktur her sehe ich keinen Fehler. Teile mal deine IF-Anweisung in 3 Abfragen auf. Dann siehst du, bei welcher es hakt.

Ich denke aber, dass es scheinbar in der Zeile davor hakt.

Bernhard

SvenLittkowski 29. Jan 2011 22:01

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
Ja, habe ich getan. Ich habe den Code auch etwas abgeändert. Trotzdem der gleiche Erfolg:

Code:
   IsColor:=True;
   if(TheColor1[1]<>'$') then IsColor:=False;
   for Runde:=0 to Length(TheColor1) do
   begin
    if not(Ord(TheColor1[Runde]) in [48..57])and not(Ord(TheColor1[Runde]) in [65..70]) then IsColor:=False;
   end;
Manchmal sieht man den Wald vor lauter Bäumen nicht. Ich bin mir ganz sicher, der Fehler ist sehr dumm und leicht zu beheben. Trotzdem gelingt es mir bis jetzt nicht. Brüte schon seit Stunden darüber...

Bummi 29. Jan 2011 22:08

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
Delphi-Quellcode:
for Runde:=2 to

SvenLittkowski 29. Jan 2011 23:42

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
"Runde:=2 to ..."?

Ich denke auch, "0" war falsch. Ich habe jetzt Runde bei "1! anfangen lassen. Nein, warte! Du hast Recht! Denn [1] ist ja das "$"-Zeichen, also geht es erst bei [2] los! Danke!

Aber es handelt sich um einen Fehler, der beim Compilieren entsteht, nicht zur Laufzeit. Da muß also etwas anderes, Gravierendes nicht stimmen.

Hier erneut die Fehlermeldungen:

Zitat:

Zitat von Delphi 7
[Error] Box1.pas(351): Incompatible types: 'TObject' and 'Char'
[Error] Box1.pas(351): Incompatible types: 'procedure, untyped pointer or untyped parameter' and 'Integer'

Und hier der Quelltext, wie er jetzt ist:

Code:
   IsColor:=True;
   if(TheColor1[1]<>'$') then IsColor:=False
   else
   begin
    for Runde:=2 to Length(TheColor1) do
    begin
     if (not Ord(TheColor1[Runde]) in [48..57]) and (not Ord(TheColor1[Runde]) in [65..70]) then IsColor:=False;  // LINE 351, Fehler-Cursor zwischen "[Runde])" und " in [48"
    end;
   end;

rollstuhlfahrer 29. Jan 2011 23:47

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
kannst du uns dann noch sagen, welche der Zeilen die Nummer 351 hat?

Bernhard

PS: Starte Delphi und deinen Rechner mal neu, weil da weder ein TObject ist, noch ein Pointer.

SvenLittkowski 30. Jan 2011 00:00

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
Auch nach Restart das selbe Progblem. ich habe etwas zum vorherigen Posting hinzugefügt (dortiger Programm-Code).

Bummi 30. Jan 2011 00:14

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
irgendeine gleichnamige Variable von einem anderen Typ irgendwo in Deinem Source ...?

SvenLittkowski 30. Jan 2011 00:28

AW: Fehler: IF: Kein Teil eienr Menge (Bedingung)
 
Nein, nirgends. Worum es mir eigentlich nur geht, ist festzustellen, ob der String entweder einen Farbwert wiedergibt (z.B. "$00004F4F") oder den Namen einer Farbe (z.B. "clBlack"). Was ich in Delphi vermisse, ist eine Testfunktion wie "IsColor" oder "IsReal", wie ich es von einigen anderen Programmiersprachen her kenne.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:10 Uhr.
Seite 1 von 4  1 23     Letzte »    

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