Eseguibile con javafx 8

di il
5 risposte

Eseguibile con javafx 8

Ciao a tutti
ho scritto un programma in java fx 8. ho creato le interfacce grafiche con SceneBuilder e le relative classi di controllo di queste interfacce grafiche.
sto cercando di creare l'eseguibile, uso Eclipse come IDE, ma una volta creato l'eseguibile il programma parte e funziona, ma non mi carica le ImageView che ho utilizzato per la GUI e che ho caricato con SceneBuilder.
penso che sia un problema di corretta cartella.
la cartella con le immagini che utilizzo per la GUI l'ho caricata a livello delle cartelle src e bin.
oppure ciò può essere dovuto a delle opzioni al momento di creare il file .jar con Eclipse?
chi mi sa dare un mano, per favore
ciao

5 Risposte

  • Re: Eseguibile con javafx 8

    starsinger2000 ha scritto:


    ma non mi carica le ImageView che ho utilizzato per la GUI e che ho caricato con SceneBuilder.
    la cartella con le immagini che utilizzo per la GUI l'ho caricata a livello delle cartelle src e bin.
    Precisa prima come hai referenziato/caricato le immagini. Mostra del codice.
  • Re: Eseguibile con javafx 8

    Nel file fxml una ImageView è caricata così:
    
    			<ImageView fitHeight="34.0" fitWidth="44.0" pickOnBounds="true" preserveRatio="true">
                               <image>
                                  <Image url="@../../../../../../../../../../../img/images%20Icons8/Refresh_48px.png" />
                               </image>
                            </ImageView>
    
    e nella relativa classe di controllo java, non c'è nessun riferimento a questa imageview. non è necessario.
  • Re: Eseguibile con javafx 8

    starsinger2000 ha scritto:


    <Image url="@../../../../../../../../../../../img/images%20Icons8/Refresh_48px.png" />
    naaaaaaa non si capisce nulla così.

    Dalla documentazione ufficiale Introduction to FXML:

    "The location resolution operator (represented by an "@" prefix to the attribute value) is used to specify that an attribute value should be treated as a location relative to the current file rather than a simple string."

    Quindi dove hai il file fxml ti basta fare una cartella es. "images" e poi

    <Image url="@images/Refresh_48px.png" />
  • Re: Eseguibile con javafx 8

    Grazie,
    provo e ti faccio sapere
  • Re: Eseguibile con javafx 8

    Grazie, così un po va!!
    creando la cartella Images come sotto cartella della cartella contenente il file .fxml va meglio, ma io non capisco
    perchè mi carica solamente delle immagini e non altre.
    
    			<Button fx:id="buttonOpenGestione" alignment="CENTER" contentDisplay="TOP" layoutX="65.0" layoutY="13.0" mnemonicParsing="false" onMouseClicked="#buttonOpenGestioneMouseClicked" onMouseEntered="#buttonOpenGestioneMouseEntered" onMouseExited="#buttonOpenGestioneMouseExited" prefHeight="50.0" prefWidth="54.0" text="Open">
                               <font>
                                  <Font name="Arial" size="12.0" />
                               </font>
                               <graphic>
                                  <ImageView fitHeight="37.0" fitWidth="29.0" pickOnBounds="true" preserveRatio="true">
                                     <image>
                                        <Image url="@Images/Open%20Folder_48px_1.png" />
                                     </image>
                                  </ImageView>
                               </graphic>
                               <tooltip>
                                  <Tooltip text="cerca - apri">
                                     <font>
                                        <Font size="13.0" />
                                     </font></Tooltip>
                               </tooltip>
                            </Button>
                            <Button fx:id="buttonSaveGestione" alignment="CENTER" contentDisplay="TOP" layoutX="126.0" layoutY="13.0" mnemonicParsing="false" onMouseClicked="#buttonSaveGestioneMouseClicked" onMouseEntered="#buttonSaveGestioneMouseEntered" onMouseExited="#buttonSaveGestioneMouseExited" prefHeight="56.0" prefWidth="50.0" text="Save">
                               <font>
                                  <Font name="Arial" size="12.0" />
                               </font>
                               <graphic>
                                  <ImageView fitHeight="29.0" fitWidth="33.0" pickOnBounds="true" preserveRatio="true">
                                     <image>
                                        <Image url="@Images/Save_48px_1.png" />
                                     </image>
                                  </ImageView>
                               </graphic>
                               <tooltip>
                                  <Tooltip text="salva il record nel db">
                                     <font>
                                        <Font size="13.0" />
                                     </font></Tooltip>
                               </tooltip>
                            </Button>
    
    l'immagine sul primo button va bene, sul secondo invece non visualizza niente, eppure il file è presente.
    grazie
    ciao
Devi accedere o registrarti per scrivere nel forum
5 risposte