1
我想用JavaFX(不是用控制檯)獲取用戶輸入的文本而沒有任何文本框,但是我堅持使用代碼。基本上我想要做的是在登錄頁面中,用戶將通過按下USB中的按鈕,從令牌USB接收隨機的OTP字符串,當表單處於活動狀態時,字符串將自動通過登錄頁面接收涉及任何文本字段。JavaFX在沒有任何文本框的情況下等待用戶輸入的文本
爲我能想出現在演示的代碼是這樣的:
public class LoginBoxPresenterFinal implements Initializable {
...
public void initialize(URL arg0, ResourceBundle arg1) {
....
Scanner reader = new Scanner(System.in);
String otp = reader.nextLine();
System.out.println(otp);
}}
這段代碼是錯誤居然掃描儀將只接受在Eclipse的控制檯輸入,它不會顯示登錄頁面,直到我在控制檯中鍵入內容並按下Enter按鈕。
任何幫助表示讚賞。謝謝
我認爲你唯一的選擇就是聽[onKeyPressed(https://docs.oracle.com/javase/8/javafx/api/javafx/scene /Scene.html#setOnKeyPressed-javafx.event.EventHandler-)並逐個跟蹤字符。 – Itai
@sillyfly問題是這個輸入不是來自用戶輸入的內容,而是由這個令牌USB自動生成的,而且如果使用onKeyPressed,如果我有另一個用戶名的文本框,它也會被捕獲。 –
推測USB令牌像鍵盤一樣操作,發送按鍵。如果它的工作方式不同,那麼你的問題應該包括更多關於它是如何工作的信息。 – Itai