連続で、ID取得を行うにはどうすればいいですか

質問:OrangeEasyAPIを利用して、ボタンを押した時だけ読むのではなく、連続で読み続けるにはどうすればよいですか?
 
 
回答:

製品付属のサンプルプログラムソースでは、ボタンを押した時のみID読取りを行っています。
これを連続で行うには、タイマーなどのコンポーネントを利用して、定期的にAPIを呼び出してください。

※0.5秒~1.0秒(500ms~1000ms)間隔での呼び出しを推奨しております。(SCL010の場合)
※1.5秒(1500ms)程度の間隔での呼び出しを推奨しております。(R1-1Rの場合)

例.VB2008の場合

1.プロジェクトを開いて、デザイナ(画面を開発する画面)を開く
 サンプルプログラムソースでは、Form1.vbを開いて下さい。

2.[ツールボックス]の中から「Timer」を選択して、画面の上にドラッグ&ドロップする
 Timer1というコンポーネントが画面の下部に追加されます。

3.追加されたコンポーネント(例.Timer1)を選択して、プロパティの[Enable]をTrueにする
 デフォルトでEnableはFalseになっていますので、Timerが動作しません。
 [Interval]を変更することで、読取り間隔(ミリ秒)を変更することができます。
 100ミリ秒以下に設定することはできません。

3.追加されたコンポーネント(例.Timer1)をダブルクリックして、Timerイベントを作成する
 ダブルクリックするとForm1.vbに

Private Sub Timer1_Tick( ByVal sender As System.Object,  ByVal e As System.EventArgs) Handles Timer1.Tick

End Sub
 が追加されます。

4.Timer1_Tick内でAPIを呼び出す
 定期的に行いたい処理をここで記述してください。

Private Sub Timer1_Tick( ByVal sender As System.Object,  ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim id(10) As Byte
        Dim length As Integer
        Dim result As String
        Dim value As Integer
        result = ""

        'ICを読取ります
        value = GetCardID(id(0), length)    
End Sub


Comments