Problem z porównaniem łańcucha.

0

witam
Jak zrobić coś takiego aby odbierane dane przez rs232 poleceniem ComPort.ReadStr(Str, Count); czyli do łańcucha, a potem jeśli wystąpi w tym łancuchu znak 'a' zrobił okreslona animacje. Animacje wiem jak zrobic lecz nie wiem jak sobie poradzic tym porownaniem łańcucha. Moze trzeba go zapisac do tablicy? ale tez nie wiem jak to zrobic. pomocy

0

Jakiego typu jest zmienna Str?. PChar, string, array of char czy co? Wklej nagłówek procedury ComPort.ReadStr().

Kiedy się wreszcie nauczycie dawać pełne info. Nie umiem stawiać tarota.

0

SORKI zmienna typu string :)

procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer); //wyswietlanie danych z rs232
var
Str: String;

begin

ComPort.ReadStr(Str, Count); //czyta z portu jako znaki do str (count - ilosc znaków)
Memo.Text := memo.Text + str; //wyswietla to co bylo + odczytane z portu

end;

0

pętla:

if s <> '' then
 for i := 1 to length(s) do if UpCase(s[i]) = 'A' then Cokolwiek();
0

dzieki wielkie działa idelanie. bardzo mi pomogles :) DZIEKUJE

0

oj Adam a Ty jak zwykle na około

if Pos('a', Str) <> 0 then 
  TwojaAnimacjaCzyCosInnego;

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