3

これに関する数十のオプション/ソリューションを確認しましたが、機能させることができません。

簡単に言えば、ユーザーが手動でテキストを入力できるテキストボックスを持つVB.Net Winformがあるか、USB接続のバーコードスキャナー(キーボードをシミュレートする)を使用してUPCをキャプチャできます。

私がやろうとしているのは、現在フォーカスされているコントロールに関係なく、バーコード入力をテキストボックスに入力することです。

フォームの KeyPreview プロパティを True に設定しました。

次に、次のように frmMain_Keypress イベントにいくつかのコードを追加しました。

    If Me.txtSearch.Focused = False Then
        txtSearch.Focus()
    End If

非常にシンプルです...そしてそれはうまくいきます...

txtSearch が既にフォーカスされている場合、バーコード/UPC 全体がテキスト ボックスに入力されます。

ただし、別のコントロールにフォーカスがある場合、最初の文字を除くバーコード/UPC のすべての文字がテキストボックスに入力されます。常に最初の文字を取り除きます。

上記のコードにいくつかのデバッグステートメントを配置して、最初の文字がまったく読み取られているかどうか、および読み取られているかどうかを確認しました...テキストボックスに送信されていません。

バーコード スキャンに対する非常に複雑なソリューションを他にもたくさん見てきましたが、非常に単純なものに非常に近いように思えますが、主な文字が取り除かれると明らかに機能しません。

うまくいけば、私は非常に明白な何かを見逃しています。

4

1 に答える 1