2017-03-22 1 views
1

J'essaie d'afficher un contenu différent dans une certaine scène en fonction du bouton que l'utilisateur sélectionne dans la scène précédente. J'ai essayé d'utiliser public static void main(String[] args) et des minuteries pour que cela fonctionne, mais je ne peux pas.comment exécuter une méthode dans JavaFX lors de l'ouverture d'une nouvelle scène

Comment faire pour exécuter contentSelect() lors de l'ouverture de la scène? Je sais que cela devrait être simple, mais je ne peux pas le faire fonctionner pour la vie de moi.

package application; 

import java.time.Duration; 

import javafx.animation.KeyFrame; 
import javafx.animation.Timeline; 
import javafx.fxml.FXML; 
import javafx.scene.control.Label; 
import javafx.scene.image.ImageView; 

public class GrammarTestController { 

    private static int picSelect=0; 
    @FXML 
    private Label title; 
    @FXML 
    private Label info; 
    @FXML 
    private ImageView image; 

    //Will decide which type of content to display 
    private void contentSelect(){ 


    } 
} 
+2

Si 'GrammarTestController' est le contrôleur de la scène pop-up, vous pouvez appeler' contentSelect() 'dans la méthode' initialize() 'du contrôleur, celui La méthode est appelée automatiquement par le 'FXMLLoader'. – DVarga

+0

Salut! Merci pour votre réponse! Mais ça ne marche toujours pas. –

+0

private void initialize() { \t \t System.out.println ("plz oui"); \t \t} –

Répondre

0

Mettre en oeuvre Initializable:

public class GrammarTestController implements Initializable{ 
    private static int picSelect=0; 
    @FXML 
    private Label title; 
    @FXML 
    private Label info; 
    @FXML 
    private ImageView image; 

    //This method is called upon fxml load 
    public void initialize(URL location, ResourceBundle resources) { 
     contentSelect(); 
    } 

    //Will decide which type of content to display 
    private void contentSelect(){ 


    } 
}