Forum: Sonstige Fragen zu Delphi
Delphi
by baumina,
26. Aug 2013
Lehrer :roll:
Wenn du nur das letzte Zeichen betrachtest, hilft dir das gar nichts, denn man kann in einem Editfeld auch mittendrin ein Zeichen abändern oder einfügen. D.h. du musst immer den kompletten String begutachten.
Vor dem Ändern musst Du dir die Position des Cursors merken. Diese muss pro gelöschtem Zeichen ebenfalls korrigiert werden. Nach dem Ändern muss der Cursor dann neu...
Forum: Sonstige Fragen zu Delphi
Delphi
by baumina,
26. Aug 2013
Wenn Du möchtest, dass ein Editfeld nur 1en und 0en zulässt, löse es folgendermassen:
Ereignis OnKeyPress:
if not CharInSet(Key, ) then
begin // #8 = Backspace
beep;
Key := #0;
end;
Forum: Sonstige Fragen zu Delphi
Delphi
by baumina,
26. Aug 2013
Du löscht nur wenn die Länge des String genau 1 ist. Dann würde reichen:
procedure TForm1.BinaerChange(Sender: TObject); // Change also direkt bei eingabe
begin
If ((Binaer.Text = '1') or (Binaer.Text = '0')) then Binaer.Text := '';
end;