亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? playerui.java

?? < JavaME核心技術最佳實踐>>的全部源代碼
?? JAVA
字號:
package com.j2medev.chapter7;

import java.io.IOException;
import java.io.InputStream;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Item;
import javax.microedition.media.Manager;
import javax.microedition.media.MediaException;
import javax.microedition.media.Player;
import javax.microedition.media.PlayerListener;
import javax.microedition.media.control.GUIControl;
import javax.microedition.media.control.VideoControl;
import javax.microedition.media.control.VolumeControl;

public class PlayerUI extends Canvas implements Runnable,CommandListener,PlayerListener{
    
    private Player player = null;
    private MainMIDlet midlet = null;
    private int type = 1;
    private long ptime = 0;
    private String title = "";
    private long duration = 0;
    private int percent = 0;
    private Thread currentThread = null;
    private boolean stop = false;
    public static final int WAV = 1;
    public static final int VIDEO = 2;
    private Command backCommand = new Command("Back",Command.BACK,1);
    private Command pauseCommand = new Command("pause",Command.OK,2);
    private Command playCommand = new Command("Play",Command.OK,2);
    
    public PlayerUI(MainMIDlet midlet) {
        this.midlet = midlet;
        this.addCommand(pauseCommand);
        this.addCommand(backCommand);
        this.setCommandListener(this);
    }
    
    public void setType(int type){
        this.type = type;
    }
    
    public void paint(Graphics g){
        int w = getWidth();
        int h = getHeight();
        g.setColor(0xFFFFFF);
        g.fillRect(0, 0, w, h);
        //如果是wav文件,顯示播放進度
        if(type == WAV){
            g.setColor(0x000000);
            g.drawRect((w-100)/2,h-10,100,6);
            g.setColor(255,0,0);
            g.fillRect((w-100)/2+1,h-9,percent,5);
        }
    }
    //啟動player
    public void startPlayer(){
        if(currentThread == null){
            stop = false;
            currentThread = new Thread(this);
            currentThread.start();
        }else if(player != null){
            try {
                player.start();
            } catch (MediaException ex) {
                ex.printStackTrace();
            }
        }
    }
    
    //根據type類型創建不同的播放器
    public void createPlayer(){
        if(type == WAV){
            try{
                InputStream is = getClass().getResourceAsStream("/bark.wav");
                player = Manager.createPlayer(is,"audio/x-wav");
                player.setLoopCount(-1);
            }catch(MediaException ex){
                ex.printStackTrace();
            }catch(IOException ex){
                ex.printStackTrace();
            }
        }else if(type == VIDEO){
            try{
                InputStream is = getClass().getResourceAsStream("/moon.mpg");
                player = Manager.createPlayer(is,"video/mpeg");
            }catch(MediaException ex){
                ex.printStackTrace();
            }catch(IOException ex){
                ex.printStackTrace();
            }
        }
    }
    public void run(){
        try{
            if(player == null){
                createPlayer();
            }
            player.realize();
            if(type == WAV){
                duration = player.getDuration();
                player.prefetch();
                player.start();
                while(!stop){
                    try{
                        long t = player.getMediaTime();
                        percent = (int)((100*t)/duration);
                        Thread.sleep(100);
                        repaint();
                    }catch(InterruptedException ex){
                        
                    }
                }
            }else{
                player.addPlayerListener(this);
                VideoControl vc = (VideoControl)player.getControl("VideoControl");
              /*  Form form = new Form("test");
                form.append((Item)vc.initDisplayMode(GUIControl.USE_GUI_PRIMITIVE,null));
                midlet.setCurrent(form);
               */
                if(vc != null){
                    vc.initDisplayMode(VideoControl.USE_DIRECT_VIDEO,this);
                    //vc.setDisplayFullScreen(true);
                    vc.setDisplayLocation(0,0);
                    vc.setVisible(true);
                }
                player.start();
            }
        }catch(MediaException ex){
            ex.printStackTrace();
        }
    }
    
    //停止播放器
    public void stopPlayer(){
        try {
            currentThread = null;
            stop = true;
            Thread.sleep(100);
        } catch (InterruptedException ex) {
            ex.printStackTrace();
        }
        if(player != null){
            player.close();
            player = null;
        }
    }
    
    public void pausePlayer(){
        if(player != null){
            try{
                player.stop();
            }catch(MediaException ex){
                ex.printStackTrace();
            }
        }
    }
    
    public void commandAction(Command cmd,Displayable displayable){
        if(cmd == pauseCommand){
            removeCommand(pauseCommand);
            addCommand(playCommand);
            ptime = player.getMediaTime();
            pausePlayer();
        }else if(cmd == playCommand){
            removeCommand(playCommand);
            addCommand(pauseCommand);
            try {
                player.setMediaTime(ptime);
                player.start();
            } catch (MediaException ex) {
                ex.printStackTrace();
            }
        }else if(cmd == backCommand){
            stopPlayer();
            removeCommand(playCommand);
            addCommand(pauseCommand);
            midlet.setCurrent(midlet.getMenu());
        }
    }
    
    protected void keyPressed(int keyCode) {
        int action = getGameAction(keyCode);
        VolumeControl vc = (VolumeControl)player.getControl("VolumeControl");
        if(action == DOWN){
            vc.setLevel(vc.getLevel()-10);
        }else if(action == UP){
            vc.setLevel(vc.getLevel()+10);
        }
    }
    
    public void playerUpdate(Player player, String string, Object object) {
        if(string.equals(this.END_OF_MEDIA)){
            stopPlayer();
            midlet.setCurrent(midlet.getMenu());
        }
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品福利网| 成人午夜视频在线观看| 欧美中文字幕一二三区视频| 国产精品乱码一区二三区小蝌蚪| 国产精品你懂的| 国产高清亚洲一区| 日韩西西人体444www| 亚洲一区二区三区在线| 在线观看国产日韩| 午夜欧美2019年伦理| 欧美性受xxxx黑人xyx| 夜色激情一区二区| 欧美日韩精品欧美日韩精品一综合| 亚洲自拍偷拍九九九| av中文字幕一区| 亚洲欧洲综合另类| 欧美日韩午夜在线| 性做久久久久久久免费看| 欧美吻胸吃奶大尺度电影| 亚洲成a人片在线不卡一二三区 | 欧美日韩国产美女| 亚洲一区二区欧美激情| 欧美午夜一区二区三区免费大片| 免费观看一级特黄欧美大片| 精品1区2区在线观看| 国产成人99久久亚洲综合精品| 国产精品天干天干在观线| 国产精品自在欧美一区| 中文字幕一区二区三区精华液| 色中色一区二区| 日本中文字幕一区二区视频 | 亚洲综合图片区| 777午夜精品免费视频| 狠狠网亚洲精品| 亚洲激情自拍偷拍| 欧美成人福利视频| 成人伦理片在线| 亚洲电影一区二区| 91精品啪在线观看国产60岁| 国产精品一品二品| 一区二区三区在线不卡| 日韩你懂的在线播放| 99久久久精品| 国产一区二区精品久久91| 亚洲人一二三区| 精品国产乱码久久久久久夜甘婷婷 | 精品国产伦一区二区三区观看体验 | 在线看国产一区二区| 久久黄色级2电影| 中文字幕精品—区二区四季| 日韩欧美一二三区| 欧美在线免费播放| 丁香六月综合激情| 午夜一区二区三区在线观看| 久久夜色精品国产噜噜av| 日日骚欧美日韩| 久久亚洲一区二区三区明星换脸 | 午夜精品久久久久久久99水蜜桃| 精品免费一区二区三区| 日本道精品一区二区三区| 国产专区欧美精品| 日韩av在线发布| 国产精品乱子久久久久| 国产性色一区二区| 欧美一级久久久| 色综合久久88色综合天天6| 精品一区二区三区的国产在线播放| 亚洲精品中文字幕乱码三区 | 欧美va亚洲va| 欧美一区二区三区白人| 欧美理论电影在线| 4438x亚洲最大成人网| 51精品秘密在线观看| 欧美一区二区三区四区高清| 欧美久久久久免费| 欧美理论在线播放| 欧美日韩国产小视频| 欧美性极品少妇| 欧美日韩精品一区二区天天拍小说| 欧美在线不卡视频| 欧美伦理影视网| 日韩欧美不卡一区| 久久精品视频一区二区三区| 久久精品网站免费观看| 国产精品美女久久久久久久久久久 | 欧美美女一区二区三区| 欧美电影一区二区| 宅男噜噜噜66一区二区66| 日韩一区二区不卡| 久久美女高清视频| 国产精品成人网| 国产精品福利一区| 亚洲激情在线激情| 视频在线观看一区| 美国十次综合导航| 国产成人综合亚洲91猫咪| 成人黄色a**站在线观看| 色哟哟一区二区在线观看| 欧美日韩视频第一区| 亚洲精品在线免费播放| 国产日韩精品一区二区浪潮av| 国产精品人妖ts系列视频| 亚洲黄色免费电影| 麻豆91在线播放免费| 国产成人在线色| 色香蕉成人二区免费| 日韩一区二区视频| 国产精品人妖ts系列视频| 亚洲一区在线视频| 九色|91porny| 色综合一区二区三区| 91精品国产免费| 国产精品二三区| 日本视频一区二区三区| 成人免费观看av| 91精品国产乱码久久蜜臀| 亚洲国产精品二十页| 五月天丁香久久| 处破女av一区二区| 日韩视频一区二区| 久久九九全国免费| 久热成人在线视频| 色婷婷综合久久久| 国产午夜一区二区三区| 五月天欧美精品| 成人av中文字幕| 欧美mv和日韩mv国产网站| 亚洲老司机在线| 国产91在线观看| 精品日韩在线观看| 亚洲aⅴ怡春院| av电影一区二区| 亚洲精品一区二区三区99| 夜夜精品视频一区二区| 国产成人免费视频精品含羞草妖精| 69堂亚洲精品首页| 亚洲精品视频观看| 成人av午夜影院| 久久久蜜桃精品| 免费人成在线不卡| 欧美色图免费看| 中文字幕日本不卡| 国产成人精品免费网站| 日韩欧美国产系列| 日韩av网站免费在线| 91国产精品成人| 国产精品色眯眯| 国产成人免费视频一区| 欧美不卡在线视频| 免费在线欧美视频| 678五月天丁香亚洲综合网| 亚洲精品免费在线| 99久久99久久精品免费看蜜桃| 久久久久久久久久电影| 黄页网站大全一区二区| 精品国产三级a在线观看| 日本欧美大码aⅴ在线播放| 欧美日韩国产经典色站一区二区三区| 亚洲另类春色国产| 91蜜桃在线免费视频| 国产精品国产成人国产三级| www.亚洲免费av| 日韩一区在线看| 一本一道综合狠狠老| 成人欧美一区二区三区白人| 99re成人在线| 亚洲精选视频免费看| 欧美性视频一区二区三区| 亚洲超碰精品一区二区| 91麻豆精品国产| 久久 天天综合| 久久在线观看免费| 国产成人亚洲综合a∨婷婷图片 | 欧美三区在线视频| 五月天欧美精品| 91精品国产欧美一区二区18| 麻豆精品久久精品色综合| 精品国产污污免费网站入口 | 精品999在线播放| 国产剧情一区二区| 中文字幕免费不卡在线| 波多野结衣中文字幕一区二区三区| 国产精品美女久久久久久| av电影在线观看完整版一区二区| 中文字幕第一区| 精品国产乱码久久| 高清国产一区二区| 亚洲视频小说图片| 欧美午夜在线观看| 蜜桃视频免费观看一区| 国产亚洲精品aa午夜观看| 成人一二三区视频| 一区二区三区四区国产精品| 欧美巨大另类极品videosbest| 久久99热这里只有精品| 中文字幕欧美三区| 欧美丝袜丝交足nylons图片| 久久国产人妖系列| 亚洲欧美国产77777| 欧美一区二区三区爱爱|