Hallo,
ich empfange über RS232 Zeichenketten, die das Format 2-3 Zahlen, : , 1-4Zahlen haben.
Jetzt habe ich versucht, mit dem Quellcode
Delphi-Quellcode:
procedure TForm1.signale;
var i,j,k,nummer_i,wert_i: integer;
nummer, wert, input2: string;
begin
input2 := input;
i := 0;
j := 0;
k := 0;
i := pos(':', input2);
for j := i + 1 to length(input2) do
wert := wert + input2[j];
memo1.Lines.Add(input2);
showmessage(wert);
nummer_i := strtoint(wert);
//wert_i := strtoint(wert);
// paintbox1.Canvas.MoveTo(round(arccos((nummer_i-49)*3861/(Wert_i-37)))*8,8*round(arcsin((nummer_i-49)*3861/(Wert_i-37))));
// paintbox1.Canvas.Pixels[round(arccos((nummer_i-49)*3861/(Wert_i-37)))*8,8*round(arcsin((nummer_i-49)*3861/(Wert_i-37)))] := clred;
memo2.Lines.Add(wert);
end;
die vorderen Zahlen und die hinteren Zahlen jeweils in einen String zu kopieren. Wenn ich dann z.B. den String "Wert" in einem Memo anzeige, klappt das auch, aber wenn ich ihn in einen Integer umwandeln will, bekomme ich die Meldung :
---------------------------
Benachrichtigung über Debugger-
Exception
---------------------------
Im Projekt signalp.exe ist eine
Exception der Klasse EConvertError aufgetreten. Meldung: ''46
' ist kein gültiger Integerwert'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------
Habt ihr eine Idee, wo da der Fehler liegt?
Gruß
Spurius