Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [Javafx] Prendere componenti nel file fxml

    ciao!
    mi sto affacciando a javafx e riscontro un problema tra controller e file fxml.
    in pratica nel file fxml ho questo:
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    
    <?import java.lang.*?>
    <?import java.util.*?>
    <?import javafx.scene.*?>
    <?import javafx.scene.control.*?>
    <?import javafx.scene.layout.*?>
    
    <AnchorPane id="AnchorPane" prefHeight="162.0" prefWidth="300.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" 
                fx:controller="com_mp_bf.FXMLDocumentController">
        <children>
            <Button fx:id="buttonBook" layoutX="14.0" layoutY="15.0" mnemonicParsing="false" onAction="#launchBook" prefHeight="128.0" prefWidth="128.0" />
            <Button fx:id="buttonFilm" layoutX="161.0" layoutY="15.0" mnemonicParsing="false" onAction="#launchFilm" prefHeight="128.0" prefWidth="128.0" />
        </children>
    </AnchorPane>
    poi nel controller:
    codice:
    public class FXMLDocumentController implements Initializable {
    
        @FXML
        private Button buttonFilm;
        private Button buttonBook;
        
        @FXML
        private void launchBook(ActionEvent event) {
        }
    
        @FXML
        private void launchFilm(ActionEvent event) {
        }
    
        @Override
        public void initialize(URL url, ResourceBundle rb) {
            Image imageBook = new Image(".............");
            Image imageFilm = new Image("...............");
            buttonBook.setGraphic(new ImageView(imageBook)); --> NullPointerException
            buttonFilm.setGraphic(new ImageView(imageFilm));
        }
    
    }
    però ottengo un errore (ho segnato la riga dove lo da):
    codice:
    Caused by: java.lang.NullPointerException
        at com_mp_bf.FXMLDocumentController.initialize(FXMLDocumentController.java:34)
        at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2542)
        ... 22 more
    sinceramente non riesco a capire dove sbaglio!

  2. #2
    niente, ho capito da solo:
    codice:
    @FXML
        private Button buttonFilm;
        
        @FXML
        private Button buttonBook;
    in pratica @FXML va specificato per ogni campo.

    ciao!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.