JavaFX文本框获得价值并在Swing中使用它

时间:2019-04-08 19:12:00

标签: java multithreading javafx webview javafx-webengine

嘿,我正在竭尽全力从Swing应用程序中嵌入的文本框中获取价值。它可以很好地传递textbox值,但是一旦到达我的JavaScript调用,它就会说:

  

线程“ JavaFX Application Thread”中的异常java.lang.NullPointerException

我的代码如下: chatProg:

textField.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
       typedText = textField.getText();
       chatOut.println(typedText);

       htmlChat chat_ = new htmlChat();

       Platform.runLater(new Runnable() {
           @Override
           public void run() {
               chat_.webView.getEngine().executeScript("newTalk('" + typedText + "')");
               chat_.webView.getEngine().setOnAlert(event -> showAlert(event.getData()));                       
           }
       });

       textField.setText("");
       textField.setFocusable(true);
    }
});

public static void showAlert(String msg){
   Alert alert = new Alert(AlertType.INFORMATION);
   alert.setTitle("Custom Alert");
   alert.setHeaderText("");
   alert.setContentText(msg);
   alert.showAndWait();
}

typedText textfield值具有正确的值。发生错误的地方是我拥有的部分

chat_.webView.getEngine().executeScript("newTalk('" + typedText + "')");

那么我该如何在上面的命令中调用JavaFX webView,以免引起该错误?

0 个答案:

没有答案