powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Отключить срабатывание сканера
8 сообщений из 8, страница 1 из 1
Отключить срабатывание сканера
    #37114270
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть форма, на ней Pageframe и несколько страниц, страница, на которой находится сканер Enabled=.F., которая становится доступной по кнопке, но дело в том, что если даже страница недоступна, где происходит сканирование, при считывании сканером штрих-кода, всё равно происходит выполнение кода(открытие таблицы поиск и т.д.) в методе Oncomm, как можно запретить выполнение этого кода в методе Oncomm, если у этой страницы Enabled=.F.
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114271
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вставь проверку Enabled в код, который сканером запускается.
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114300
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да я так вроде сделал в Oncomm
IF ThisForm.Pageframe1.Page3.Enabled = .T.
endif
но когда захожу сканировать, сканер какие-то лишние символы впихивает, видать надо как-то очищать этот com порт, при работе со сканером...
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114394
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1, очищать надо не компорт, а сам сканер.

Обычно (по умолчанию) в сканер заложено 2 действия подряд, выполняемых при нажатии кнопки считывания кода:
1) собственно считывание кода;
2) генерация символа перевода каретки и строки, благодаря чему каждое новое считывание начинается с новой строки, если считывать в текстовый файл.

Но, возможно, предыдущими пользователями в этот порядок были внесены изменения.

Чтобы вернуть все на место, необходимо перепрограммировать сканер путем чтения определенных штрихкодов из инструкции к нему.

Рекомендую вернуть установку по умолчанию, т.е. чтение кода + перевод каретки и строки.
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114439
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверь также, чтобы перед пользованием сканером фокус ввода стоял именно в том поле, куда нужно считать штрихкод. Иначе сканером будет "нажиматься" бог знает какая кнопка или что еще.

Также рекомендую для считывания кода показывать небольшую модальную форму с единственным полем для считывания кода.

В методе KeyPress этого поля заложи реакцию на Enter, чтобы запоминался введенный код и форма при этом закрывалась. А "Enter", по идее, введет сам сканер сразу после ввода кода, если будет настроен как я писал ранее. Наконец, если пользователь откажется от введения кода, он сам нажмет на Enter, чтобы эту форму закрыть.
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114485
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо за подсказки :-), правда, я ввёл
IF ThisForm.Pageframe1.Page3.Enabled = .T.
else
THIS.inbuffercount=0
endif
фиг знает почему это(вроде работает), где бы почитать на живом доступном языке, а не на сухом информативном, про эти методы...но вроде работает :-)
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114692
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1спасибо за подсказки :-), правда, я ввёл
IF ThisForm.Pageframe1.Page3.Enabled = .T.
else
THIS.inbuffercount=0
endif
фиг знает почему это(вроде работает), где бы почитать на живом доступном языке, а не на сухом информативном, про эти методы...но вроде работает :-)
Никогда с COM-портами не работал, но как понимаю принципы - инфа лежит где-то в буфере пока ее не прочитают.
Если изначально ты сделал:
Код: plaintext
1.
2.
IF ThisForm.Pageframe1.Page3.Enabled = .T. 
  ... тут читаем и обрабатываем
endif
то при Enabled = .F. инфа лежит в буфере и ждет когда ее прочитают, в результате после установки Enabled = .T. читается все накопленное в буфере.
...
Рейтинг: 0 / 0
Отключить срабатывание сканера
    #37114766
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Dima T
> Никогда с COM-портами не работал, но как понимаю принципы - инфа лежит где-то в буфере пока ее не прочитают.
> ... читается все накопленное в буфере.

Примерно правильно, только буфер не бесконечный и часть содержимого буфера может перезаписыватся. Поэтому можно
прочитать "остаток" от предыдущего срабатывания.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Отключить срабатывание сканера
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]