2012-11-02 62 views
0

可能重複:
How to read a single char from the console in Java (as the user types it)?Java的掃描儀輸入,測試如果按下按鈕

我編程在Java中,我想知道,如果他們是一個方法來「等待」直到按下按鈕才能繼續執行程序的下一部分。我在終端上運行。 即

Scanner in = new Scanner(System.in); 
. 
. 
. 
System.out.print("Something"); 
/* Wait until a button has been pressed */ 
System.out.println("Something Else"); 

喜歡的東西in.next()將等待,直到你按下的東西,然後按回車。 有沒有辦法可以等到任何按鈕被按下(或鼠標點擊?),然後進入下一行。最好讓輸入不回顯到屏幕(如果可能的話)。
所以輸出將是: 東西 別的東西

感謝您的時間 任何幫助表示讚賞。

+0

這種方法是搖擺:[Java教程 - 如何寫一個按鍵偵聽器(HTTP://文檔。 oracle.com/javase/tutorial/uiswing/events/keylistener.html) – Keppil

回答

1

一種方法是設置鍵盤/鼠標鉤。

您可以使用Jnativehook做到這一點:

JNativeHook是一個庫,爲Java提供全球鍵盤和鼠標 聽衆。這將允許您聆聽全球快捷鍵 或鼠標移動,否則使用純Java是不可能的。若要 完成此任務,JNativeHook利用平臺相關本機 代碼通過Java的本地接口創建低級系統範圍的掛鉤並將這些事件傳遞到您的應用程序。

另一種方式是寫一個KeyListener的捕捉鍵盤輸入,看看here