title: Platform.runLater() doesn't work for not on fx application thread
body: <p>I'm trying to build "Stick Hero" board game using javafx (JDK8). I use </p>
  
  <pre><code>scene.setOnKeyPressed(e -&gt; {
          Thread thread = new Thread() {
              @Override
              public void run() {
                  if (e.getCode().equals(KeyCode.ENTER)) {
                      // do some graphical changes
                      playGame();
                  }
              }
          };
          thread.start();
      });
  </code></pre>
  
  <p>to listen to keyboard and by pressing enter the vertical line turns into a horizontal bridge and the human pass the bridge and this will continue until the length of bridge doesn't match the distance. Now i want to update UI during <code>playGame()</code> method is running. When i tried to do <code>scoreLabel.setText(String.valueOf(score));</code> and update the <code>scoreLabel</code> text i encountered <code>Not on FX application thread</code> error. <code>playGame()</code> is something like</p>
  
  <pre><code>for (int i = 0; i &lt; cycle; i++) {
          goOneCycle();
  
          try {
              Thread.sleep(100);
          } catch (InterruptedException e) {
              e.printStackTrace();
          }
  
          fixPosition();
  
          try {
              Thread.sleep(100);
          } catch (InterruptedException e) {
              e.printStackTrace();
          }
      }
  </code></pre>
  
  <p>and in <code>goOneCycle();</code> and <code>fixPosition();</code> i do some graphical changes but it does not shown until the end of the loop.
  Now i have two questions. First why i can do stuff like <code>scoreLabel.setLayoutX(500);</code> but i cannot do <code>scoreLabel.setText(String.valueOf(score));</code> i mean in the first case i do not encounter <code>Not on FX application thread</code>. And how i can update <code>scoreLabel</code> text. Notice that i already tried to use <code>Platform.runLater()</code> but when i use this animations and graphical changes will not shown in <code>playGame()</code> method, and just the final frame is shown -all of the animations is done but it does not shown.</p>