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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? simpleplayerform.java

?? 這是一個入門級別的手機視頻軟件
?? JAVA
字號:
/* * @(#)SimplePlayerForm.java	1.4 04/03/10 * * Copyright (c) 2000-2004 Sun Microsystems, Inc. All rights reserved.  * PROPRIETARY/CONFIDENTIAL * Use is subject to license terms */package example.mmademo;import java.util.*;import java.io.*;import javax.microedition.midlet.*;import javax.microedition.lcdui.*;import javax.microedition.media.*;import javax.microedition.media.control.*;/** * MMAPI player main window for media files, implemented as a Form * * @version 1.4 */public class SimplePlayerForm extends Form     implements SimplePlayerGUI.Parent, 	       Utils.ContentHandler, 	       Utils.Interruptable,	       Runnable {    private SimplePlayerGUI gui; // default: null    private Utils.BreadCrumbTrail parent;    private static Image spacerImage;    private ImageItem iiLogo;    private StringItem siFileTitle;    private StringItem siTime;    private StringItem siRate;    private StringItem siKaraoke;    private StringItem siFeedback;    private StringItem siStatus;    private boolean karaokeShowing;    private static int maxKaraokeLines = 2;    private static void debugOut(String s) {	Utils.debugOut("SimplePlayerForm: "+s);    }    public SimplePlayerForm(String title, Utils.BreadCrumbTrail parent) {	this(title, null, parent);    }    public SimplePlayerForm(String title, SimplePlayerGUI spg, Utils.BreadCrumbTrail parent) {	super(title);	this.parent = parent;	this.gui = spg;	siFileTitle = new StringItem("", "");	siTime = new StringItem("", "");	siRate = new StringItem("", "");	siKaraoke = new StringItem("", "");	siFeedback = new StringItem("", "");	siStatus = new StringItem("", "");	debugOut("constructor finished");    }    private void appendNewLine(Item item) {	insertNewLine(size(), item);    }    private void insertNewLine(int pos, Item item) {	insert(pos, (StringItem)item);	Spacer spacer = new Spacer(3, 10);	spacer.setLayout(Item.LAYOUT_NEWLINE_BEFORE);	if(pos < 8) {	    insert(pos++, spacer);	}    }    private void setUpItems() {	// first delete all items	for (int i = size()-1; i>=0; i--) {	    delete(i);	}	karaokeShowing = false;	getGUI();	if (!gui.hasGUIControls()) {	    makeImageItem();	}	appendNewLine(siFileTitle);	appendNewLine(siTime);	if (gui.hasRateControl() || gui.hasTempoControl()) {	    appendNewLine(siRate);	}	if (gui.hasGUIControls()) {	    Control[] controls = gui.getControls();	    if (controls!=null) {		for (int i=0; i<controls.length; i++) {		    Control ctrl = controls[i];		    if (ctrl instanceof GUIControl) {			Object guiItem = ((GUIControl) ctrl).initDisplayMode(GUIControl.USE_GUI_PRIMITIVE, null);			if (guiItem instanceof Item) {			    append((Item) guiItem);			    if (ctrl instanceof VideoControl) {				try {				    ((VideoControl) ctrl).setDisplayFullScreen(false);				} catch (MediaException me) {				    Utils.debugOut(me);				}			    }			}		    }		}	    }	}	appendNewLine(siFeedback);	appendNewLine(siStatus);    }    private void makeImageItem() {	if (gui!=null && !gui.isFullScreen()) {	    if (iiLogo==null) {		Image logo = gui.getLogo();		if (logo!=null) {		    iiLogo = new ImageItem("", logo,					   ImageItem.LAYOUT_CENTER					   | ImageItem.LAYOUT_NEWLINE_BEFORE					   | ImageItem.LAYOUT_NEWLINE_AFTER, "MMAPI logo");		}	    }	    if (iiLogo != null) {		insert(0, iiLogo);	    }	}    }    ////////////////////////////// interface Utils.BreadCrumbTrail /////////////////    public Displayable go(Displayable d) {	return parent.go(d);    }    public Displayable goBack() {	return parent.goBack();    }    public Displayable replaceCurrent(Displayable d) {	return parent.replaceCurrent(d);    }    public Displayable getCurrentDisplayable() {	return parent.getCurrentDisplayable();    }    /////////////////////////// interface SimplePlayerGUI.Parent //////////////////	public Utils.BreadCrumbTrail getParent() {	    return parent;	}    // called after the media is prefetched    public void setupDisplay() {	setUpItems();    }    public void setStatus(String s) {	siStatus.setText(s);    }    public void setFeedback(String s) {	siFeedback.setText(s);    }    public void setFileTitle(String s) {	siFileTitle.setText(s);    }    public void updateKaraoke() {	int[] karaokeParams = new int[4];	String[] lines = gui.getKaraokeStr(karaokeParams);	int currLine = karaokeParams[SimplePlayerGUI.KARAOKE_LINE];	int lineCount = karaokeParams[SimplePlayerGUI.KARAOKE_LINE_COUNT];	int syllLen = karaokeParams[SimplePlayerGUI.KARAOKE_SYLLABLE_LENGTH];	int currLinePos = karaokeParams[SimplePlayerGUI.KARAOKE_LINE_INDEX];	int thisLine = 0;	if (lineCount > maxKaraokeLines) {	    thisLine = currLine - 1;	    if (thisLine < 0) {		thisLine = 0;	    }	    if (thisLine + maxKaraokeLines > lineCount) {		thisLine = lineCount - maxKaraokeLines;	    } else if (lineCount - thisLine > maxKaraokeLines) {		lineCount = thisLine + maxKaraokeLines;	    }	}	String text = "";	for (; thisLine < lineCount; thisLine++) {	    text+=lines[thisLine]+"\n";	}	siKaraoke.setText(text);	if (!karaokeShowing && !gui.isFullScreen()) {	    // insert karaoke item before feedback line	    for (int i = size()-1; i>=0; i--) {		if (get(i)==siFeedback) {		    if (i>0 && (get(i-1) instanceof ImageItem)) {			i--;		    }		    insertNewLine(i, siKaraoke);		    break;		}	    }	    // do not try to visualize siKaraoke again	    karaokeShowing = true;	}    }    public void updateTime() {	if (gui!=null) {	    siTime.setText(gui.getMediaTimeStr());	}    }    public void updateRate() {	if (getGUI().hasTempoControl()) {	    siRate.setText(gui.getTempoStr());	} else {	    siRate.setText(gui.getRateStr());	}    }    public void updateDisplay() {    }    public void fullScreen(boolean value) {	// nothing to do ?    }    //////////////////////////////// interface Utils.ContentHandler ///////////////////////////////    public synchronized void close() {	if (gui != null) {	    gui.closePlayer();	    gui = null;	}    }    public boolean canHandle(String url) {	// TODO ?	return true;    }    public void handle(String name, String url) {	Utils.debugOut("SimplePlayerForm: handle "+url);	getGUI().setParent(this);	gui.setSong(name, url);	doHandle();    }    public void handle(String name, InputStream is, String contentType) {	getGUI().setParent(this);	gui.setSong(name, is, contentType);	doHandle();    }    // ///////////////////////// interface Utils.ContentHandler //////////////// //    private synchronized SimplePlayerGUI getGUI() {	if (gui == null) {	    debugOut("create GUI");	    gui = new SimplePlayerGUI();	    gui.initialize(getTitle(), this);	    gui.setTimerInterval(500);	    makeImageItem();	}	return gui;    }    private void doHandle() {	debugOut("doHandle");	setUpItems();	// START HACK	// I want to display the player first, and THEN start prefetching.	// the only way I was able to achieve this was by creating a new thread.	new Thread(this).start();    }    public void run() {	gui.startPlayer();    }    // END HACK    // /////////////////////////////////// Interface Utils.Interruptable ////////////////// //    /**     * Called in response to a request to pause the MIDlet.     * This implementation will just call the same     * method in the GUI implementation.     */    public synchronized void pauseApp() {	if (gui != null) {	    gui.pauseApp();	}    }	    /**     * Called when a MIDlet is asked to resume operations     * after a call to pauseApp(). This method is only     * called after pauseApp(), so it is different from     * MIDlet's startApp().     *     * This implementation will just call the same     * method in the GUI implementation.     */    public synchronized void resumeApp() {	if (gui != null) {	    gui.resumeApp();	}    }    // for debugging    public String toString() {	return "SimplePlayerForm";    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美挠脚心视频网站| 亚洲图片一区二区| 亚洲图片自拍偷拍| 国产99精品国产| 日韩一区二区三区在线| 亚洲精品ww久久久久久p站| 久久精品国产亚洲高清剧情介绍| 波多野结衣欧美| 精品国产免费一区二区三区香蕉| 一区二区激情视频| 成人精品鲁一区一区二区| 91精品欧美福利在线观看| 亚洲青青青在线视频| 国产自产高清不卡| 日韩免费看的电影| 日韩在线播放一区二区| 在线视频中文字幕一区二区| 国产清纯在线一区二区www| 美女被吸乳得到大胸91| 欧美日韩亚洲另类| 亚洲伊人色欲综合网| 99精品热视频| 亚洲欧美怡红院| 丰满岳乱妇一区二区三区| 亚洲精品一区在线观看| 蜜桃av一区二区在线观看| 欧美疯狂做受xxxx富婆| 天天色天天爱天天射综合| 欧美在线|欧美| 一区二区高清免费观看影视大全 | 久久久精品日韩欧美| 美腿丝袜亚洲一区| 日韩欧美亚洲国产另类| 另类小说视频一区二区| 欧美电影免费观看高清完整版在| 亚洲高清在线精品| 欧美一区二区三区在线电影 | 国产精品一区在线| 欧美精品一区二区在线播放| 久久91精品国产91久久小草| 久久综合九色综合欧美98| 国产精品资源在线看| 国产午夜久久久久| 94色蜜桃网一区二区三区| 亚洲欧美日韩综合aⅴ视频| 色94色欧美sute亚洲线路二| 偷拍亚洲欧洲综合| 欧美一级国产精品| 国产精品资源站在线| 中文字幕一区二区三区色视频| 91丨九色丨蝌蚪丨老版| 亚洲高清在线精品| 日韩一区二区麻豆国产| 国产在线看一区| 国产精品成人一区二区三区夜夜夜| 91伊人久久大香线蕉| 日韩专区欧美专区| 久久伊人中文字幕| 91免费在线视频观看| 全部av―极品视觉盛宴亚洲| 国产亚洲成aⅴ人片在线观看 | 国产成人午夜精品影院观看视频 | 欧美私模裸体表演在线观看| 日本强好片久久久久久aaa| 精品剧情在线观看| 色综合天天综合在线视频| 男男成人高潮片免费网站| 国产人妖乱国产精品人妖| 欧美在线观看视频一区二区三区| 调教+趴+乳夹+国产+精品| 久久久久久久久久久久久夜| 日本韩国一区二区| 国产在线精品一区二区| 亚洲一区二区三区免费视频| 精品国一区二区三区| 色婷婷精品久久二区二区蜜臂av| 美女视频免费一区| 亚洲精品日韩专区silk| 久久欧美中文字幕| 欧美日韩久久久一区| 成人一级视频在线观看| 婷婷成人激情在线网| 亚洲日本电影在线| 国产丝袜美腿一区二区三区| 欧美精品丝袜久久久中文字幕| 成人午夜碰碰视频| 精品一区二区av| 午夜精品久久久久| 亚洲欧美偷拍卡通变态| 国产亚洲污的网站| 日韩欧美国产一区二区在线播放| 色综合天天综合网天天看片| 国产69精品久久777的优势| 日韩高清欧美激情| 一区二区三区日韩精品视频| 中文字幕av一区二区三区| 日韩视频免费观看高清完整版在线观看| 91免费国产在线| 国产91丝袜在线观看| 国产一区高清在线| 理论片日本一区| 日韩高清在线观看| 午夜不卡av在线| 一二三四区精品视频| 亚洲欧美日韩系列| 亚洲欧美激情在线| 亚洲欧美色一区| 尤物在线观看一区| 亚洲激情成人在线| 亚洲综合网站在线观看| 亚洲欧洲色图综合| 亚洲美女在线一区| 亚洲乱码中文字幕| 亚洲精品成a人| 亚洲一区二区三区四区在线观看 | 国产亚洲一本大道中文在线| 26uuu亚洲婷婷狠狠天堂| 26uuu色噜噜精品一区| 久久久久亚洲蜜桃| 国产亚洲婷婷免费| 中文字幕一区二区三| 亚洲欧美区自拍先锋| 亚洲午夜激情av| 日韩激情视频在线观看| 精品一区二区三区的国产在线播放 | 国产日本亚洲高清| 国产精品国产三级国产aⅴ入口| 国产精品成人在线观看| 亚洲激情图片小说视频| 日韩电影在线免费观看| 久久国产免费看| 国产成a人亚洲精品| 91麻豆成人久久精品二区三区| 欧美在线观看你懂的| 日韩欧美一区中文| 中文字幕欧美区| 亚洲资源中文字幕| 久久精品国产99国产精品| 国产盗摄一区二区| 日本高清不卡aⅴ免费网站| 日韩一区二区免费高清| 国产亚洲精品久| 亚洲国产日韩一级| 精品亚洲aⅴ乱码一区二区三区| 高清不卡一区二区| 在线视频综合导航| 26uuu色噜噜精品一区二区| 亚洲精品亚洲人成人网在线播放| 日韩在线一区二区三区| av在线综合网| 欧美一区国产二区| 国产精品初高中害羞小美女文| 日韩av电影免费观看高清完整版 | 欧美变态凌虐bdsm| 国产精品毛片大码女人| 亚洲成av人片一区二区梦乃| 国产裸体歌舞团一区二区| 在线看国产一区| 国产视频一区不卡| 日韩成人一级大片| 91蜜桃网址入口| 久久久精品天堂| 日本中文字幕不卡| 在线观看国产精品网站| 久久久久久久性| 美女诱惑一区二区| 色美美综合视频| 国产人妖乱国产精品人妖| 美女久久久精品| 欧美人动与zoxxxx乱| 中文字幕日韩一区| 国产乱码精品一品二品| 欧美精品色一区二区三区| 亚洲免费资源在线播放| 不卡av在线免费观看| 久久综合九色综合欧美98| 日日摸夜夜添夜夜添国产精品| 色综合久久综合网97色综合| 中日韩免费视频中文字幕| 国产一区二区主播在线| 日韩精品中文字幕一区二区三区| 亚洲国产综合在线| 在线观看欧美精品| 亚洲人妖av一区二区| heyzo一本久久综合| 日本一区二区三区高清不卡| 久久国产日韩欧美精品| 日韩一区二区影院| 日韩成人av影视| 91精品国产综合久久蜜臀| 亚洲国产一区二区视频| 欧美视频一区二区| 亚洲成人免费在线观看| 欧美影片第一页| 亚洲国产日韩一级| 欧美精品欧美精品系列| 天天免费综合色| 欧美一区二区三区精品| 日韩成人免费电影| 欧美成人r级一区二区三区|