Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Destiny Rising: quando un gioco mobile supera il gioco originale
Destiny Rising: quando un gioco mobile supera il gioco originale
Tra il declino di Destiny 2 e la crisi di Bungie, il nuovo titolo mobile sviluppato da NetEase sorprende per profondità e varietà. Rising offre ciò che il live service di Bungie non riesce più a garantire, riportando i giocatori in un universo coerente. Un confronto che mette in luce i limiti tecnici e strategici dello studio di Bellevue
Plaud Note Pro convince per qualità e integrazione, ma l’abbonamento resta un ostacolo
Plaud Note Pro convince per qualità e integrazione, ma l’abbonamento resta un ostacolo
Plaud Note Pro è un registratore digitale elegante e tascabile con app integrata che semplifica trascrizioni e riepiloghi, offre funzioni avanzate come template e note intelligenti, ma resta vincolato a un piano a pagamento per chi ne fa un uso intensivo
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy?
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy?
Google Pixel 10 è uno smartphone che unisce una fotocamera molto più versatile rispetto al passato grazie allo zoom ottico 5x, il supporto magnetico Pixelsnap e il nuovo chip Tensor G5. Il dispositivo porta Android 16 e funzionalità AI avanzate come Camera Coach, mantenendo il design caratteristico della serie Pixel con miglioramenti nelle prestazioni e nell'autonomia. In Italia, però, mancano diverse feature peculiari basate sull'AI.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-06-2008, 17:46   #1
al3000
Member
 
L'Avatar di al3000
 
Iscritto dal: Nov 2006
Città: Vigonovo
Messaggi: 108
[JAVA] Player MP3

salve ho creato questo semplice player ma non riesco a metterlo in pausa, elenco di seguito il codice:
Codice:
package player;
import javax.media.*;
import javax.swing.*;
import javax.swing.event.*;
import java.io.File;
import java.awt.*;
import java.awt.event.*;
public class Main{
    public static void main(String[] args){
        PL p=new PL();
        p.setSize(300,300);
        p.setVisible(true);
        p.pack();
    }
}
class PL extends Frame implements ActionListener,ChangeListener,WindowListener{
    private JButton Play,Stop,Muto,Open;
    private Panel p1,p;
    private PlayerThread pt;
    private boolean statoMute;
    private File aperto;
    private JSlider slider;
    private static final int VOL_MIN=0;
    private static final int VOL_INIT=50;
    private static final int VOL_MAX=100;
    public PL(){
        super("Audio Player");
        p=new Panel();
        aperto=null;
        slider=new JSlider(JSlider.HORIZONTAL,VOL_MIN,VOL_MAX,VOL_INIT);
        p.add(new Label("Audio Player"));
        p1=new Panel();
        Play=new JButton("Play");
        Stop=new JButton("Stop");
        Open=new JButton("^");
        Play.addActionListener(this);
        Stop.addActionListener(this);
        Open.addActionListener(this);
        slider.addChangeListener(this);
        addWindowListener(this);
        Muto=new JButton("Mute");
        Muto.addActionListener(this);
        setLayout(new GridLayout(2,1));
        p1.add(Open);
        p1.add(Play);
        p1.add(Stop);
        p1.add(slider);
        p1.add(Muto);
        pt=null;
        statoMute=false;
        add(p);
        add(p1);
    }
    public void actionPerformed(ActionEvent e) {
        String nomeBottone=e.getActionCommand();
        if(nomeBottone.equals("^"))
           aperto=OpenFile();
        if(nomeBottone.equals("Play")){
            if(aperto!=null){
                pt.playerPause();
            }
            else{
                aperto=OpenFile();
                pt=new PlayerThread(aperto);
                pt.start();
            }
            
        }
        if(nomeBottone.equals("Stop")&&pt!=null){
            pt.playerStop();
        }            
        if(nomeBottone.equals("Mute")){
            statoMute=!statoMute;
            pt.playerMute(statoMute);
        }
    }
    public File OpenFile(){
        FileDialog fd=new FileDialog(this,"File",FileDialog.LOAD);
        fd.setVisible(true);
        File f = new File (fd.getDirectory(), fd.getFile());
        fd.dispose();
        return f;
    }

    public void stateChanged(ChangeEvent e) {
        JSlider source = (JSlider)e.getSource();
        pt.playerVolume((float)source.getValue());
    }
    public void windowOpened(WindowEvent e) {}
    public void windowClosing(WindowEvent e) {
        pt.playerStop();
        System.exit(0);
    }
    public void windowClosed(WindowEvent e) {}
    public void windowIconified(WindowEvent e) {}
    public void windowDeiconified(WindowEvent e) {}
    public void windowActivated(WindowEvent e) {}
    public void windowDeactivated(WindowEvent e) {}
}
class PlayerThread extends Thread{
    private Player p;
    private File file;
    PlayerThread(File file){
        this.file=file;
        p=null;
    }
    void playerStart(){
        try {
            p = Manager.createPlayer(file.toURL());
            p.start();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    void playerPause(){
        try{
            if(playerState())
                synchronized(p){
                    p.wait();
                }
            else
                synchronized(p){
                    p.notifyAll();
                }
        }
        catch(Exception ex){
            ex.printStackTrace();
        }
    }
    boolean playerState(){
        if(p.getState()==600)
            return true;
        else
            return false;
    }
    void playerStop(){
        p.stop();
        p.close();
    }
    void playerMute(boolean stato){
        p.getGainControl().setMute(stato);
    }
    void playerVolume(float level){
        p.getGainControl().setLevel(level/100);
    }
    public void run(){
        playerStart();
    }
}
se si preme il tasto play dopo che il player é partito l'intero programma si blocca ma la riproduzione continua.
potete aiutarmi ?
__________________
Intel Core i7 3770 - ASUS P8Z77-V LE Plus - RAM DDR 3 Kingston Hyper-X 16GB 1600 Mhz - EVGA GeForce GTX 1070 FTW - SSD Samsung 750 EVO + 320GB WD Caviar Blue - Ali Corsair CX600 - Case CM HAF 932 Advanced
al3000 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2008, 14:47   #2
al3000
Member
 
L'Avatar di al3000
 
Iscritto dal: Nov 2006
Città: Vigonovo
Messaggi: 108
UP
__________________
Intel Core i7 3770 - ASUS P8Z77-V LE Plus - RAM DDR 3 Kingston Hyper-X 16GB 1600 Mhz - EVGA GeForce GTX 1070 FTW - SSD Samsung 750 EVO + 320GB WD Caviar Blue - Ali Corsair CX600 - Case CM HAF 932 Advanced
al3000 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Destiny Rising: quando un gioco mobile supera il gioco originale Destiny Rising: quando un gioco mobile supera il...
Plaud Note Pro convince per qualità e integrazione, ma l’abbonamento resta un ostacolo Plaud Note Pro convince per qualità e int...
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy? Google Pixel 10 è compatto e ha uno zoom ...
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Interlune creerà un centro di ric...
Stop Killing Games: 97% delle firme conv...
La GTX 2080 Ti mai arrivata sul mercato,...
Hoolow Knight: Silksong, il gioco che a ...
Duolingo crolla in Borsa: la minaccia ar...
Battlefield 6: i giocatori console potra...
Citroen Racing, la marca ritorna alle co...
Windows 10 ESU: come partecipare al prog...
ASUS Vivobook 16X a meno di 470€ su Amaz...
Con Agent Payments Protocol di Google gl...
Windows 10 muore, gli attivisti insorgon...
NVIDIA sarà il primo cliente di T...
Stellantis cancella il pick-up elettrico...
Microsoft termina il supporto per Office...
VaultGemma di Google è il primo L...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:22.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v