如何在运行时更改java fx中“Label”字段的文本?

时间:2016-01-14 13:12:32

标签: javafx

我尝试使用setText()方法更改'label'字段的值,该方法在timer调用的方法中。总共,我有3个类1)FXMLDocumentController 2)checkInternetStatus和3)InternetConnectivity,如下所示。

首先,我在FXMLDocumentController的'initialize'方法中调用了timer,如下所示     定时器计时器=新的计时器();     timer.schedule(new checkInternetStatus(),0,5);

然后,它在checkInternetStatus类中调用runnable并返回到第1类中的方法。这里getInternetStatus()是InternetConnectivity类中的一个返回布尔值的方法。

class checkInternetStatus extends TimerTask {
  InternetConnectivity obj = new InternetConnectivity();
  FXMLDocumentController obj2 = new FXMLDocumentController();

  @Override
  public void run() {
    javafx.application.Platform.runLater(new Runnable() {
        public void run() {
            obj2.checkInternetStatusFXML(obj.getInternetStatus());
        }
    });
  }

但它会返回Null Pointer Exception,如下所示

线程中的“JavaFX应用程序线程”java.lang.NullPointerException 中的异常

statusText.setText("desired_text"); 

在FXMLDocumentController中设置所需文本的方法中。 任何人都可以提供帮助,在此先感谢!!

0 个答案:

没有答案