how do i get a javafx controller?

The problem is here:

public class Content1Utils {

    public void prepareText(String txt){
        String newTxt = txt + " - Test123";
        new Content1Controller().setTextInArea(newTxt);
    }
}

You are making a new controller instance that is not initialized from the FXML so it doesn’t have a valid TextArea field. You don’t want to have your utility class work this way.

Try:

public void content1Button(){
    Content1Utils contentUtils = new Content1Utils(this);
    contentUtils.prepareText("XXX");
}

Content1Utils.java:

package sample.content1;

public class Content1Utils {
    private final Content1Controller controller;

    public Content1utils(Content1Controller ctrl) {
        this.controller = ctrl;
    }

    public void prepareText(String txt){
        String newTxt = txt + " - Test123";
        controller.setTextInArea(newTxt);
    }
}

CLICK HERE to find out more related problems solutions.

Leave a Comment

Your email address will not be published.

Scroll to Top