我正在尝试在JnativeHook MoseClicked事件发生时设置javafx TextField文本。但我面对" NullPointerException"我将我的Controller类代码放在这里:
myProgram.exe < myInput.txt
}
这个错误正在发生:
双击事件
线程中的异常&#34; JNativeHook Dispatch Thread&#34;显示java.lang.NullPointerException
在FXMLDocumentController.nativeMouseClicked(FXMLDocumentController.java:60)
at org.jnativehook.GlobalScreen $ EventDispatchTask.processButtonEvent(Unknown Source)
at org.jnativehook.GlobalScreen $ EventDispatchTask.processButtonEvent(Unknown Source)
在org.jnativehook.GlobalScreen $ EventDispatchTask.run(未知来源)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)
在java.lang.Thread.run(Thread.java:745)
更新
我更新了我的代码,并使用@FXML注释
注释txt_Search
答案 0 :(得分:0)
@Kingtak你从未初始化你的'txt_Search&#39;变量。您可以在此处使用@FXML注释,并在fxml文件中将id分配给那里的文本字段。
答案 1 :(得分:0)
您应该返回并查看使用维基的working with swing部分。默认情况下,此库生成的事件不会在Swing事件调度线程上运行!您必须包含对swing组件的访问权限或在注册钩子之前使用GlobalScreen.setEventDispatcher(new SwingDispatchService());
。有关详情,请参阅event dispatch thread和Swing thread safety。