2013-06-02 14 views
4

J'ai un fichier fxml contrôlé par un contrôleur. Je veux séparer le contrôleur en plusieurs parties comme si placé dans un contrôleur fait un long code. Malheureusement, fx: controller ne peut être placé qu'à la racine. Y at-il des suggestions pour moi comment séparer le contrôleur?Contrôleur multiple pour un fichier FXML

Répondre

7

Je recommande de créer des contrôles personnalisés - utilisez plusieurs petits fichiers FXML plutôt qu'un gros fichier FXML.

Voici le tutoriel:

http://docs.oracle.com/javafx/2/fxml_get_started/custom_control.htm

+0

oui, enfin j'utiliser plusieurs FXML dans mon projet. Merci. –

+0

@Puce Si je choisis ce type de contrôle personnalisé, serai-je encore capable d'utiliser le générateur de scènes avec mon fichier fxml? Et va-t-il remplacer mes paramètres fxml personnalisés encore et encore quand je l'enregistre depuis le générateur de scènes? –

+1

@TomasBisciak Oui, SceneBuilder supporte la construction fx: root. Il devrait se comporter de la même manière qu'avec les fichiers FXML non-fx: root. – Puce

1

Lors du chargement de votre balisage FXML, seul un contrôleur peut être spécifié pour votre graphe de scène. Vous pouvez charger d'autres fichiers de balisage FXML et imbriquer des contrôleurs, mais je ne pense pas que ce soit ce que vous demandez.

À mon avis, peu importe de toute façon.

Vous pouvez écrire n'importe quel nombre de classes dans n'importe quel nombre de fichiers et les faire interagir avec votre classe de contrôleur, tout comme n'importe quelle classe Java peut interagir avec n'importe quelle autre classe Java.

Je ne peux vraiment pas penser à une raison particulièrement bonne pour laquelle il serait utile de spécifier plusieurs contrôleurs pour un graphe de scène au moment du chargement.

Questions connexes