Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56

    javafx problema al video

    ho un problema, il video in questione è presente sia nel mio disco C che nel package del programma(uso netbeans)se uso questa sintassi:
    codice:
    media2 = new Media("file:///C://videoBacc/2.mp4");
    il video funziona benissimo ed alla fine appaiono i contenitori con dentro i bottoni denominati second e third:
    codice:
    player.setOnEndOfMedia(new Runnable() {            @Override            public void run() {                second.setTranslateX((t.getScreenSize().width / 2) + 100);                second.setTranslateY(t.getScreenSize().height / 2);                third.setTranslateX((t.getScreenSize().width / 2) - 100);                third.setTranslateY(t.getScreenSize().height / 2);                root.getChildren().add(second);                root.getChildren().add(third);            }        });
    ma in questo modo il percorso dei video è fisso ed il programma funzionerà solo su windows, quindi avevo pensato di usare la sintassi
    codice:
    media1 = new Media(getClass().getResource("/video/1.mp4").toString());
    il video viene letto lo stesso ma quando arriva il momento in cui dovrebbe entrare in funzione il metodo endOfMedia, il programma sembra che salti il tutto non facendo ovviamente apparire i due bottoni, qualcuno sa come aiutarmi????grazie in anticipo, qui sotto posto il codice per intero.
    codice:
    package dapostare;import java.awt.Toolkit;import java.io.File;import javafx.application.Application;import static javafx.application.Application.launch;import javafx.event.EventHandler;import javafx.scene.Group;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.input.MouseEvent;import javafx.scene.layout.VBox;import javafx.scene.media.Media;import javafx.scene.media.MediaPlayer;import javafx.scene.media.MediaView;import javafx.scene.paint.Color;import javafx.stage.Stage;import javax.swing.JOptionPane;public class DaPostare extends Application {    int w = 0;    int h = 0;    Media media1;    Media media2;    Media media3;    MediaPlayer player;    MediaView view;    Toolkit t = Toolkit.getDefaultToolkit();    public static void main(String[] args) {        launch(args);    }    @Override    public void start(final Stage stage) throws Exception {                    media1 = new Media(getClass().getResource("/video/1.mp4").toString());            media2 = new Media("file:///C://videoBacc/2.mp4");            media3 = new Media("file:///C://videoBacc/2.mp4");            player = new MediaPlayer(media1);            view = new MediaView(player);                    final Group root = new Group();        Scene scene = new Scene(root, w, h, Color.BLACK);        stage.setScene(scene);        //stage.setWidth(100);      setta la larghezza del frame        stage.show();        view.setFitWidth(t.getScreenSize().width);      //setta la grandezza del video        view.setFitHeight(t.getScreenSize().height);        player.play();        final VBox second = new VBox();        final Button destra = new Button();        destra.setScaleX(2);        destra.setScaleY(2);        destra.setText("destra");        second.getChildren().add(destra);        final VBox third = new VBox();        final Button sinistra = new Button();        sinistra.setScaleX(2);        sinistra.setScaleY(2);        sinistra.setText("sinistra");        third.getChildren().add(sinistra);        root.getChildren().add(view);//        root.getChildren().add(perPlay);        player.setOnReady(new Runnable() {            @Override            public void run() {                w = player.getMedia().getWidth();                h = player.getMedia().getHeight();                stage.setFullScreen(true);            }        });        player.setOnEndOfMedia(new Runnable() {            @Override            public void run() {                second.setTranslateX((t.getScreenSize().width / 2) + 100);                second.setTranslateY(t.getScreenSize().height / 2);                third.setTranslateX((t.getScreenSize().width / 2) - 100);                third.setTranslateY(t.getScreenSize().height / 2);                root.getChildren().add(second);                root.getChildren().add(third);            }        });        destra.setOnMousePressed(new EventHandler() {            @Override            public void handle(MouseEvent me) {                player = new MediaPlayer(media3);                view = new MediaView(player);                root.getChildren().add(view);                view.setFitWidth(t.getScreenSize().width);      //setta la grandezza del video                view.setFitHeight(t.getScreenSize().height);                player.play();            }        });        //PERCORSO CHE PARTE DA SINISTRA        sinistra.setOnMousePressed(new EventHandler() {            @Override            public void handle(MouseEvent me) {                player = new MediaPlayer(media2);                view = new MediaView(player);                root.getChildren().add(view);                view.setFitWidth(t.getScreenSize().width);      //setta la grandezza del video                view.setFitHeight(t.getScreenSize().height);                player.play();            }        });    }}

  2. #2
    che è sta cosa?
    Non si capisce niente.
    Prova a formattarlo correttamente(magari copiandolo prima in notepad o simile) e poi ricopiarlo sul sito.
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56
    ho un problema, il video in questione è presente sia nel mio disco C che nel package del programma(uso netbeans)se uso questa sintassi:


    codice:
    media2 = new Media("file:///C://videoBacc/2.mp4");
    [/CODE
    
    
    il video funziona benissimo ed alla fine appaiono i contenitori con dentro i bottoni denominati second e third:
    
    
    [CODE
    player.setOnEndOfMedia(new Runnable() {
    
    
                @Override
                public void run() {
    
    
                    second.setTranslateX((t.getScreenSize().width / 2) + 100);
                    second.setTranslateY(t.getScreenSize().height / 2);
                    third.setTranslateX((t.getScreenSize().width / 2) - 100);
                    third.setTranslateY(t.getScreenSize().height / 2);
    
    
                    root.getChildren().add(second);
                    root.getChildren().add(third);
                }
    });



    ma in questo modo il percorso dei video è fisso ed il programma funzionerà solo su windows, quindi avevo pensato di usare la sintassi


    codice:
    media1 = new Media(getClass().getResource("/video/1.mp4").toString());

    il video viene letto lo stesso ma quando arriva il momento in cui dovrebbe entrare in funzione il metodo setOnEndOfMedia, il programma sembra che salti il tutto non facendo ovviamente apparire i due bottoni, qualcuno sa come aiutarmi????grazie in anticipo, qui sotto posto il codice per intero.




    codice:
    package dapostare;
    
    
    import java.awt.Toolkit;
    import java.io.File;
    import javafx.application.Application;
    import static javafx.application.Application.launch;
    import javafx.event.EventHandler;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.input.MouseEvent;
    import javafx.scene.layout.VBox;
    import javafx.scene.media.Media;
    import javafx.scene.media.MediaPlayer;
    import javafx.scene.media.MediaView;
    import javafx.scene.paint.Color;
    import javafx.stage.Stage;
    import javax.swing.JOptionPane;
    
    
    public class DaPostare extends Application {
    
    
        int w = 0;
        int h = 0;
    
    
        Media media1;
        Media media2;
        Media media3;
    
    
        MediaPlayer player;
        MediaView view;
        Toolkit t = Toolkit.getDefaultToolkit();
    
    
        public static void main(String[] args) {
            launch(args);
        }
    
    
        @Override
        public void start(final Stage stage) throws Exception {
            
                media1 = new Media(getClass().getResource("/video/1.mp4").toString());
                media2 = new Media("file:///C://videoBacc/2.mp4");
                media3 = new Media("file:///C://videoBacc/2.mp4");
                player = new MediaPlayer(media1);
                view = new MediaView(player);
                
            final Group root = new Group();
    
    
            Scene scene = new Scene(root, w, h, Color.BLACK);
    
    
            stage.setScene(scene);
            //stage.setWidth(100);      setta la larghezza del frame
            stage.show();
            view.setFitWidth(t.getScreenSize().width);      //setta la grandezza del video
            view.setFitHeight(t.getScreenSize().height);
    
    
            player.play();
            final VBox second = new VBox();
            final Button destra = new Button();
            destra.setScaleX(2);
            destra.setScaleY(2);
            destra.setText("destra");
            second.getChildren().add(destra);
    
    
            final VBox third = new VBox();
            final Button sinistra = new Button();
            sinistra.setScaleX(2);
            sinistra.setScaleY(2);
            sinistra.setText("sinistra");
            third.getChildren().add(sinistra);
    
    
            root.getChildren().add(view);
    //        root.getChildren().add(perPlay);
    
    
            player.setOnReady(new Runnable() {
    
    
                @Override
                public void run() {
                    w = player.getMedia().getWidth();
                    h = player.getMedia().getHeight();
    
    
                    stage.setFullScreen(true);
    
    
                }
            });
    
    
            player.setOnEndOfMedia(new Runnable() {
    
    
                @Override
                public void run() {
    
    
                    second.setTranslateX((t.getScreenSize().width / 2) + 100);
                    second.setTranslateY(t.getScreenSize().height / 2);
                    third.setTranslateX((t.getScreenSize().width / 2) - 100);
                    third.setTranslateY(t.getScreenSize().height / 2);
    
    
                    root.getChildren().add(second);
                    root.getChildren().add(third);
                }
            });
            destra.setOnMousePressed(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent me) {
                    player = new MediaPlayer(media3);
                    view = new MediaView(player);
                    root.getChildren().add(view);
    
    
                    view.setFitWidth(t.getScreenSize().width);      //setta la grandezza del video
                    view.setFitHeight(t.getScreenSize().height);
    
    
                    player.play();
    
    
                }
            });
            //PERCORSO CHE PARTE DA SINISTRA
            sinistra.setOnMousePressed(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent me) {
                    player = new MediaPlayer(media2);
                    view = new MediaView(player);
                    root.getChildren().add(view);
    
    
                    view.setFitWidth(t.getScreenSize().width);      //setta la grandezza del video
                    view.setFitHeight(t.getScreenSize().height);
    
    
                    player.play();
                }
            });
        }
    }
    Ultima modifica di astolfo96; 22-08-2014 a 11:53

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56
    non riesco a formattarlo... ho copiato il tutto da su notepad++, sistemato con l'indentazione e poi ricopiato da li ed incollato nella sezione risposta veloce

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56
    risolto dovevo usare notepad normale

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56
    qualche aiuto?

  7. #7
    Il programma non da eccezioni?
    E' impossibile che si blocchi senza un motivo...
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56
    non è che si blocchi, termina il video e sembra che il programma non legga il metodo setOnEndOfMedia() rimane fermo essendo finito aspettando una qualche azione, mentre se scrivo il percorso per localizzare i video partendo dal disco C, i due pulsanti appaiono, quindi credo sia sbagliato usare Media media1 = new Media(getClass().getResource("/video/1.mp4").toString()); conoscete quindi qualche metodo per leggere i video dalla cartella senza che il percorso passi dal disco C in modo da poter fare andare il programma anche su mac o altri os?

  9. #9
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Hai provato ad andare in debug?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2012
    residenza
    matrix
    Messaggi
    56
    si ma non si blocca quando arriva alle istruzioni nel metodo

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.