2017-03-17 8 views
0
public class ProjectxController implements Initializable { 

    @FXML 
    private AnchorPane LandingPane; 

    @Override 
    public void initialize(URL url, ResourceBundle rb) { 
     // TODO 
    } 

    @FXML 
    private void onLoad(ActionEvent event) throws IOException{ 

      pane = FXMLLoader.load(getClass().getResource("connectedPage.fxml")); 
      LandingPane.getChildren().setAll(pane); 


    } 

Hinweis: Mit zwei fxml Dateien Frontpage.fxml und ConnectedPage.fxml mit einem Controller projectxController d.h obenWie Beschriftungstext aus geladener fxml ändern

codierte
  1. Frontpage.fxml hat eine Schaltfläche, die connectedPage.fxml geladen werden.
  2. Connectedpage.fxml hat ein Etikett

Jetzt habe ich das Label Text festlegen möchten nach connectedpage.fxml

public class ProjectX extends Application { 

    @Override 
    public void start(Stage stage) throws Exception { 
     Parent root = FXMLLoader.load(getClass().getResource("FrontPage.fxml")); 

     Scene scene = new Scene(root); 

     stage.setScene(scene); 
     stage.setResizable(false); 
     stage.show(); 
    } 
+0

Was haben Sie bisher versucht? –

+0

Ich versuchte mit label.setText ("ABC"); aber das gibt Ausnahme –

+0

Ausnahme werden gestartet, um behoben werden ^^ so können Sie uns die Details geben? – azro

Antwort

0

geladen wird, wenn Sie erstellen Sie fxml dokumentieren Sie eine eindeutige ID zu geben haben für Sie Label:

Das selbe, das Sie für das AnchorPane getan haben.

Beispiel

@FXML 
private Label myLabel; 

innerhalb der Methode initialize Ihrer fxml Controller-Klasse Dann können Sie es ändern, wie Sie wollen.

Wenn Sie Probleme haben, von einem anderen Controller auf das Label zuzugreifen, können Sie eine get-Methode verwenden oder eine Instanz des Controllers übergeben, die Sie benötigen. All das nachdem die fxml erfolgreich geladen wurde.

Ich empfehle auch, dass Sie verschiedene Controller für verschiedene fxml-Dateien verwenden, weil es klarer ist.

Haben Sie eine Suche auf fxml loading techniques and how to connect different controllers über das Internet und Sie werden finden, was Sie brauchen.

Verwandte Themen