辯別Keyboard與usb Barcode Scanner的方法… |
尚未結案
|
ychch0819
一般會員 發表:25 回覆:29 積分:15 註冊:2006-08-09 發送簡訊給我 |
由於程式目的想要讓使用者能隨時都能利用barcode scanner掃進條碼,所以使用者不需要將游標停留在某個Edit元件上…甚至在別的程式畫面也能掃條碼,所以我的做法是用keyboard hook 來抓全域的鍵盤輸入…這邊已經OK
現在的問題在於如何分辯出是由鍵盤還是scanner輸入…之前曾經有人討論過用時間來判斷…這個想法我有實做過,或許可行… 因為scanner會在最後加上enter,因此我目前的做法是用一個buffer來存所有抓到的輸入 若index=0,則開始計時,直到抓到enter,判斷時間差(若用scanner掃條碼,通常是0.2~0.3秒會完成) 所以若超過0.3~0.4秒就不是scanner輸入,抓到enter的同時把index設為0,清空buffer... 現在的問題在於若使用者已經隨意輸入幾個鍵(從沒按過enter),接著開始掃條碼,這樣時間一定會超過0.3秒, 那我就會視為不是由scanner的輸入,這樣使用者可能會覺得為什麼會失敗,所以不知道能不能解決…還是有更好的做法… 我的想法是設timer去清buffer和重設index,但不知道有沒有問題…謝謝... |
暗黑破壞神
版主 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
|
ychch0819
一般會員 發表:25 回覆:29 積分:15 註冊:2006-08-09 發送簡訊給我 |
|
暗黑破壞神
版主 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |