請問如何擷取鍵盤上任一按鍵的狀態?

因Labview本身有內設一些鍵盤上取代顯示面板上按鈕的快速替代鍵,但有限,在labview編輯時需用一些特別的設定,例 如,在鍵盤上按 "Y" ,即表示 " SAVE ",按 " N ",即表示 "NO".....等設定,不知能否有解?

讀取鍵值再判斷傳回的數值即可達成你所要之功能.

謝謝chien回應![](upload://wh1Jr0invKZTARRL2Hqlvc8do63.gif)

但不知如何讀取鍵盤值?可否請你提示,謝謝!

[QUOTE=mercy]

因Labview本身有內設一些鍵盤上取代顯示面板上按鈕的快速替代鍵,但有限,在labview編輯時需用一些特別的設定,例 如,在鍵盤上按 "Y" ,即表示 " SAVE ",按 " N ",即表示 "NO".....等設定,不知能否有解?

[/QUOTE]

請參考LabVIEW下Basic Input Demo.vi,在example\input下,另外還有一個LabVIEW寫的俄羅斯方塊的game

[QUOTE=小小羊兒][QUOTE=mercy]

因Labview本身有內設一些鍵盤上取代顯示面板上按鈕的快速替代鍵,但有限,在labview編輯時需用一些特別的設定,例 如,在鍵盤上按 "Y" ,即表示 " SAVE ",按 " N ",即表示 "NO".....等設定,不知能否有解?

[/QUOTE]

請參考LabVIEW下Basic Input Demo.vi,在example\input下,另外還有一個LabVIEW寫的俄羅斯方塊的game

[/QUOTE]

謝謝你,小小羊兒,我以前都不知道有這一個東西,有了這個東西,就方便多了。

使用IN PORT.vi,在輸入端輸入96(Dicimal)或者60(hex)—>硬體位置,再判斷輸出鍵值即可,迴圈最好 加一點delay.

使用Event Structure裡的Key Down即可~~~

[QUOTE=chien]使用IN PORT.vi,在輸入端輸入96(Dicimal)或者60(hex)--->硬體位置,再判斷輸出鍵值即可,迴圈最好 加一點delay.[/QUOTE]

 

Sorry 有兩個問題想請教.

1. Labview 的數值如何轉換成ASCII-code 顯示.

2. 如果 我是使用USB-Keyboard 那IN PORT.vi,在輸入端 暫存器的位置數值要輸入多少??

先點選control,然後"右鍵\advance\Key Navigation\"

就可以自行設定要的功能鍵了

不知道這樣是否對你有幫助?!

我覺得原作者的意思應該是指如何新增LabVIEW程式中快速鍵的功能吧??

寫了一個小範例~~看看是不是你要的吧!!2004-08-18_191133_keyboard.llb

執行裡面的main.vi即可!版本為LV7.0

[QUOTE=Ronaldsmith]

寫了一個小範例~~看看是不是你要的吧!!2004-08-18_191133_keyboard.llb

執行裡面的main.vi即可!版本為LV7.0

[/QUOTE]

請問你程式裡Match Pattern 輸入的引數那string constant是如何建立的?
根據我看的結果那好像是space(空格),但這個string constant 又好像是null
所以我找不到這個常數該怎麼建立,可否請大大你告知一下呢?

[QUOTE=peterrabbit][QUOTE=Ronaldsmith]

寫了一個小範例~~看看是不是你要的吧!!2004-08-18_191133_keyboard.llb

執行裡面的main.vi即可!版本為LV7.0

[/QUOTE]

請問你程式裡Match Pattern 輸入的引數那string constant是如何建立的?
根據我看的結果那好像是space(空格),但這個string constant 又好像是null
所以我找不到這個常數該怎麼建立,可否請大大你告知一下呢?

如圖![](upload://dhLofZ5Y01Hv0jYFki8BokHGVx9.jpeg)

[/QUOTE]

了解了~~~~

因為其字元前面並不是空白鍵,而是個null無效的字元,但為什麼labview要
這樣設計呢?為什麼要在我們所按的字元前面加個null 呢?

解決之道:  constant string ~~~~變成 hex display~~輸入 00( null 的 ascii code)  這樣就ok了~~~

 ps :為什麼會多個null 字元呢?