case of ze stringow

0

Dlaczego nie moge zrobic takiej procedury?

case edit1.text of
'a': //...
'b': //...

wyskakuje: 'Ordinal type required'

Zapewne case of odnosi sie jedynie do integerow ale da sie to zrobic jakos ze stringami?

0

Bo się nie da! Po prosto to musi być typ policzalny, czyli np: Char

0

a jest jakas procedura zastepcza?

0

else if

0

Jeżeli to są jedynie pojedyncze znaki to można tak:

case Edit1.Text[1] of
'a':
'b':
0

a jezeli nie i ich dlugoc tez nie jest stala? :(

0

to tylko If Else

0

Wrzucić mozliwe wartosci do jakeijs tablicy albo StingLista i w CASE sprawdzać nie string, ale jego numer w tablicy, tzn dac rozkaz wyszukania i porownywac wynik :)

0

Jak kiedyś już pisałem, jeśli string ma max. 4 (8) znaków (albo pierwsze 4(8) znaków wystarcza, by zidentyfikować string), wtedy można brutalnie (przez Move) zrzutować na LongInt (Int64) i robić case na LongInt(Int64). Inna opcja: przejść na PowerBasic: tam case (nazywające się select case) działa na intach, stringach i floatach.

1 użytkowników online, w tym zalogowanych: 0, gości: 1