2011-03-10 6 views
1

내 응용 프로그램에 약간의 문제가 있습니다. 대화 상자 창을 추가하는 새 제품이 있습니다. 양식에 바코드 텍스트 상자가 있습니다. 그리고 두 개의 버튼 - 취소 속성 True로 "취소"하고 기본 속성 True로 "저장"합니다.바코드 스캐너 및 양식의 기본 버튼

바코드 입력란을 활성화하고 바코드 스캐너로 바코드를 스캔하면 바코드 끝에 줄 바꿈 문자가 추가됩니다. 그리고 문제가 있습니다 - "Save"버튼이 ENTER를 제출 키로 받아들이 기 때문에 양식을 자동으로 제출합니다.

어떻게하면 바코드 스캐닝을 피할 수 있으며 마지막에 개행 문자가있어서 양식의 기본 버튼에 영향을주지 않습니까?

미리 감사드립니다.

답변

4

가장 간단한 형태의 바코드 스캐너는 다른 키보드로 OS에 나타납니다. 바코드 스캐너가 에 대한 신호를 보낼 때 무시하려고하지만 사용자가 "실제"키보드에서 동일한 키를 누르면이를 받아들이려는 경우 distinguish between multiple keyboards이 필요합니다.

1

Symbol 스캐너를 사용하는 경우 설명서를 사용하고 접미사 문자를 none으로 변경할 수 있음을 알고 있습니다. 기본적으로 대부분의 Symbol 스캐너는 자동으로 데이터에 반환 문자를 추가하도록 구성되어 있습니다. ...

+1

이 프로그램을 사용하는 클라이언트가 바코드 스캐너를 구성하는 방법을 모르기 때문에이 문제가 해결되지 않습니다 – evilone

+1

FWIW, 소프트웨어를 사용하여 다양한 스캐너에 대해 PDF를 제공하므로 사용자가 직접 설정할 수 있습니다. 최적으로 작동합니다. 그러나 기본 설정도 고려해야합니다. – mj2008

+0

죄송합니다 ... 저는 Delphi에 대해 잘 모르기 때문에 저의 최선의 해결책입니다. 스캐너 구성은 하나 또는 두 개의 바코드를 스캔하기 때문에 전자 메일에서 잘라내어 인쇄하거나 전자 메일로 보내고 사람들이 문제를 해결하기 위해 스캔하도록 지시했습니다. :) –

2

텍스트 상자에 OnEnterOnExit 이벤트를 사용하여 저장 기본값을 설정할 수 있습니다. "바코드 입력란"이 특별한 구성 요소인지는 모르겠지만 TEdit에 해당합니다.

+0

좋아,이 작동하지만 한 가지 문제가 있습니다. 사용자가 데이터를 입력하는 최종 편집 상자 인 경우 어떻게할까요? 그런 다음 바코드를 (손으로 또는 스캐너로) 추가 한 다음 Enter 키를 눌러 양식을 제출하려고합니다. 그런 다음 작동하지 않습니다. 어떻게 든 타이머의 도움을받을 수있을 것 같아요? – evilone

관련 문제