1

誰かが私を助けてくれませんか。私は JavaFX と FXML を初めて使用し、運が悪いことに何時間もかけて何かをしようとしました。誰かがコードの実例を見せてくれませんか

1) 異なるペインやノード内のいくつかのレイヤーにネストされたノード (ラベルやボタンなど) を含む FXML をロードします。

2) ノード (ラベルやボタンなど) をリストするシーン全体をトラバースします。

3) Java コードをノード (ラベルやボタンなど) に結合して、FXML 用に定義されたコントローラー クラスの外部でそのプロパティ (ラベルやコンテンツなど) を変更できるようにします。

私の目標は、Scene Builder を使用して UI を構築し、シーンのコンテンツを動的に変更したり、他のノードを追加したりできるようにすることです。私の問題は、シーン/ステージ内のオブジェクトにアクセスできないことです。

これが私が取り組んできたコードの一部です。コメントは、私が探しているものを示唆しています。

///

public void start(Stage stage) throws Exception {
    FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("Sample.fxml"));
    Parent root = (Parent)fxmlLoader.load();
    SampleController controller = (SampleController)fxmlLoader.getController();
    controller.label.setText("Label text has been set");
    controller.button.setText("Button text has been set");

    // Looking for an example of traversing all the objects within the controller
    // looking for an object such as a TableView and its columns. Would like to
    // attach code outside the controller which populates the TableView.

    Scene scene = new Scene(root);
    stage.setScene(scene);
    stage.show();
}
4

1 に答える 1