JavaFX组件未更新

时间:2017-06-01 20:32:39

标签: java javafx kryonet jfoenix

我正在建造一个应该显示来自玩家的信息的大厅。

这是我的大厅管制员:

<div class="col-lg-3 col-md-3 col-sm-3 col-xs-3">
  <div class="box">
    <div class="box-in box-front">
      <div>jQuery</div> <br>
      <div>Bootstrap</div> <br>
      <div>RWD</div>
    </div>
    <div class="box-in box-back">level: <br> </div>
  </div>
</div>
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-3">
  <div class="box">
    <div class="box-in box-front">
      <div>SASS</div> <br>
      <div>GULP</div> <br>
      <div>JavaScript</div>
    </div>
    <div class="box-in box-back">level: <br> </div>
  </div>
</div>
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-3">
  <div class="box">
    <div class="box-in box-front">
      <div>AJAX</div> <br>
      <div>WordPress</div> <br>
      <div>JSON</div>
    </div>
    <div class="box-in box-back">level: <br> </div>
  </div>
</div>

我从另一个类访问此控制器:

public class LobbyController{

    @FXML public JFXTextArea chatArea;
    @FXML public JFXTextField chatField;

    public void displayChatMessage(String message){
        chatArea.appendText(message);
    }

    @FXML
    public void onEnter(){
        Main.client.sendChatMessage(chatField.getText());
    }
}

我的控制器肯定会收到消息,好像我在FXMLLoader fxmlLoader = new FXMLLoader(); fxmlLoader.setLocation(getClass().getResource("/views/lobby.fxml")); fxmlLoader.load(); LobbyController controller = fxmlLoader.getController(); if(!gameStarted){ controller.displayChatMessage(((Packets.ChatMessage) o).message); } 中放了一条打印行,它会正确打印消息。

我的问题是displayChatMessage()似乎根本没有改变文字。

0 个答案:

没有答案