Einzelnen Beitrag anzeigen

Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Tastatur-Barcode-Scanner

  Alt 20. Okt 2006, 14:33
Für "normale" Zeichen ist auch eher OnKeyPress zuständig. Dabei muss Dir klar sein, dass jedes Zeichen einzeln reinkommt. Du brauchst also einen "Speicher" für die bereits empfangenen Zeichen an den Du dann anhängst. Beispiel:

Delphi-Quellcode:
//------------------------------------------------------------------------
procedure TfrmLSchein.dbgLsPosKeyPress(Sender: TObject; var Key: Char);
//------------------------------------------------------------------------
// Für die Eingabe der EPos-Nummer über Barcode
//------------------------------------------------------------------------
begin
   // wenn nicht innerhalb einer Sekunde alles kommt, handelt es sich um eine manuelle Eingabe...
   if SecondsBetween(now, dtEposInputStart) > 1 then
   begin
      // ... also löschen
      sEposNr := '';
      dtEposInputStart := now;
   end;
   case key of // Gültige Zeichen, anhängen
      '0'..'9'    : sEposNr := sEposNr+Key;
   else
      sEposNr := '';
   end;
end;
Die Variablen sEposNr und dtEposInputStart sind im private Teil des Formulares enthalten:
Delphi-Quellcode:
  private
    { Private-Deklarationen }
    sEposNr : string;
    dtEposInputStart : TDateTime;
Iregdnwann kommt ja (auch vom Scanner) ein Return, und dann kannst Du die gesammelte Zeichenfolge weiterverarbeiten.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat