Мы используем сканеры штрих-кодов в нашем приложении для сканирования штрих-кодов. Как правило, когда сканируется штрих-код ISBN, при сканировании ISBN возвращается следующий набор ключей: 97887021006268
- LeftCtrl
- B
- LeftShift
- M
- D9
- D7
- D8
- D8
- D7
- Д0
- D2
- Д0
- D6
- D2
- D6
- D8
- LeftCtrl
- C
Сочетание LeftCtrl + B является преамбулой и говорит нам, что мы начинаем читать идентификационный номер.
Комбинация LeftCtrl + C является постамблом и говорит нам, что мы заканчиваем читать идентификационный номер.
Комбинация LeftShift + M говорит нам, что мы читаем тип штрих-кода.
Основываясь на этой информации, после сканирования штрих-кода я могу автоматически искать книгу с соответствующим номером ISBN. Мы используем нашу собственную библиотеку считывателей штрих-кодов, где мы можем распознать ISBN, Code39 и I2Of5.
Теперь наш клиент - оба новых сканера штрих-кода, которые являются сканерами клавиатуры. После сканирования того же ISBN, мы видим, что он не содержит, преамбулу и после, а также код для возврата типа штрих-кода. Вместо этого мы получили только цифры и Return ключ в конце:
- D7
- D8
- D8
- D7
- Д0
- Д0
- D6
- D2
- D6
- D8
- Возвращение
В таком случае я не могу автоматически распознать, какой тип штрих-кода, и даже распознать, был ли он отсканирован, - например, я не могу автоматически искать. Чтобы решить проблему, я думаю о пользовательском элементе управления, где пользователь:
- TextBox на который будет отсканирован идентификационный номер
- RadioButton с опциями (ISBN, Code39, I2Of5)
- Кнопка, отвечающая за дальнейшую обработку на основе выбранной опции RadioButton, значения в TextBox и
Я хотел бы спросить, есть ли другое (лучшее) решение.