Impostare l'icona dell'applicazione in JavaFX

Impostare l'icona dell'applicazione in JavaFX

Impostare l'application icon in JavaFX è abbastanza facile, in quanto abbiamo a disposizione un metodo apposito.

La cosa importante da considerare è dove mettere l'icona, che dipende anche da come compiliamo il programma.

Io uso Maven, ed ho messo l'icona nella sua directory standard.

Questa la classe con un metodo statico di utilità da usare in diverse parti dell'applicazione:

import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.stage.Modality;
import javafx.stage.Stage;
import java.io.IOException;

public class FXMLUtils {
    public static void openWindow(String fileFxml, String title,
                                  int width, int height, boolean resiz, Modality modality)
            throws IOException {
        Parent root = FXMLLoader.load(FXMLUtils.class.getResource(fileFxml));
        Stage stage = new Stage();
        stage.getIcons().add(new Image(FXMLUtils.class.getClassLoader().
                getResourceAsStream("puffo.png")));
        stage.setTitle(title);
        stage.setScene(new Scene(root, width, height));
        stage.setResizable(resiz);
        stage.initModality(modality);
        stage.show();
    }
}

Questa classe prima o poi la metto anche su GitHub.

Enjoy!