![]() |
Editfeld nach 5. Zeichen wechseln
Hallo zusammen,
ich habe folgendes Problem. In meiner Firma haben wir einen Barcodescanner dieser gibt einen neunstelligen Zahlencode aus. Klappt auch soweit. Jetzt möchte ich mit Delphi 2 Editfelder nehmen und diesen Code aufteilen. Editfeld1 soll 5 Zeichen habe und Editfeld2 4 Zeichen, damit ich diese beiden Werte in der Datenbank getrennt speichern kann. 1. Feld definiert eine Bestell-Nr und das zweite Feld die Position. Ich habe jetzt den einzelnen Felder mit MaxLength die maximale Zeichenlänge vorgeben, das Programm soll aber automatisch nach dem 5. Zeichen in das 2. Editfeld springen. Ich hoffe ich habe mir einigermaßen klar ausgedrückt und hoffe auf Hilfe Eurerseits. Danke im voraus |
Re: Editfeld nach 5. Zeichen wechseln
emm wie bekommst du denn den barcode? liest du ihn als ganzes ein? oder zeichenweise? Oo?
les den komplett innen string ein, den kannst dann mit Copy() in deine Edit controls aufsplitten |
Re: Editfeld nach 5. Zeichen wechseln
Konfiguriere den Scanner so, das er mit RETURN abschliest und nimm MaxLength=5 bei Edit1 wieder weg.
Dann in Edit1.onKeyPress..
Delphi-Quellcode:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var s: String; begin if key=#13 then begin key:=#0; // Prüfen ob edit1.text > 5 Zeichen ist s:=edit1.Text; if length(s) > 5 then begin edit1.Text:=Copy(s,1,5); edit2.text:=Copy(s,6,length(s)); edit2.SetFocus; end; end; end; |
Re: Editfeld nach 5. Zeichen wechseln
Danke jensw_2000
sieht gut aus. Ich wurschtel mich dann erstmal weiter, bis zum nächsten Problem. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz