Hallo,
ich würde versuchen die Darstellung von der "Übertragungseben" zu trennen.
D.h.:
1. User stellt den Wert in diesem Beispiel in der SpinEdit ein.
2. In dem Ereignis (ButtonClick, SpinEditchange....) für das Senden gehst du hin und erstellst den zu übertragenden String bzw. rufst du die Methode zur Übertragung auf:
Delphi-Quellcode:
procedure TForm1.UebertrageWert(AWert: Byte);
var
sendStr: string;
begin
sendStr := '';
// Prüfung des Wertebereichs fast nicht nötig, da AWert vom Typ Byte (0..255)
try
// Wert holen und Formatieren
sendStr := Format('%0.3d',[AWert]);
// jetzt den Wert senden
RS232.SendStr(sendStr);
// weitere Verarbeitung
// ...
except
MessegeDlg(Format('Ungültiger Wert "%d"'#13'Wert kann nicht übertragen werden', [AWert]));
end;
end;
Ungetestet und nur als Denkanstoß.
Gruß, Chris
@Edit: Ohne Syntax-Highl. gehts nicht immer