Witam, pisałem ostatnio o odwzorowanie prostego programu ( javafx ) wraz ze wzorcem MVC, odpowiedzi nie uzyskałem, ale spróbowałem sam i oczywiście ... posypało się :) Nie potrafię ustawić akcji dla buttona znajdującego się w pliku widoku.

Kontroler:

public final class controller{
    public view widok;
    public model model_obj;
        
    public controller(String[] args,view v, model m){
        widok = v;
        model_obj = m;
        setEvent(); // Powinna się ustawić akcja ?
        view.launch(args); // uruchamiam okienko ?
        //gdzieś tu chyba się zepsuło ?

      }
    public final void setEvent(){
         widok.signIn.setOnAction(new EventHandler<ActionEvent>() {
             @Override
            public void handle(ActionEvent event) {
                System.out.println("Hello World!");
            }
        });      
    }
   
}

Widok:

public class view extends Application {
    
    public Label userName, pw;
    public TextField userTextField;
    PasswordField pwBox;
    Button signIn;
    Scene scene;
    @Override
    public void start(Stage primaryStage) {
        GridPane grid = new GridPane();
        grid.setAlignment(Pos.CENTER);
        grid.setHgap(10);
        grid.setVgap(10);
        grid.setPadding(new Insets(25, 25, 25, 25));
        
        final Text scenetitle = new Text("Welcome");
        scenetitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 20));
        grid.add(scenetitle, 0, 0, 2, 1);

        userName = new Label("User Name:");
        grid.add(userName, 0, 1);   
        
        userTextField = new TextField();
        grid.add(userTextField, 1, 1);

        pw = new Label("Password:");
        grid.add(pw, 0, 2);

        pwBox = new PasswordField();
        grid.add(pwBox, 1, 2);
        
        signIn = new Button("Sign in dude !");

        grid.add(signIn, 0, 3);
 
        scene = new Scene(grid, 300, 275);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

Main:

public class JavaAppFx extends view{
    
    public static void main(String[] args) {
        model model_obj = new model();
        view widok = new view();
        controller mdl = new controller(args,widok,model_obj);
       // Tu wzorowałem się na rozwiązaniach z paru kursów o mvc, więc teoretycznie powinno działać, ale tylko teoretycznie.


    }
}

Więc wie ktoś gdzie może leżeć problem ? a może znacie jakiś inny sposób na ustawienie tej akcji ?

Z góry dzięki za pomoc.