⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 optioncanvas.java

📁 简单的MP3播放器
💻 JAVA
字号:
package com.wootion.ui;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;

import com.wootion.mainMidlet.MainMidlet;
import com.wootion.rms.PlayListBean;
import com.wootion.rms.PlayListRMS;

public class OptionCanvas extends Canvas {
	Displayable dis;

	int selected = 0;

	PlayerUI pui;

	PlayListRMS plrms = new PlayListRMS();

	private int index;

	PlayListBean plb = new PlayListBean();

	// final Font font = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD,
	// Font.SIZE_MEDIUM);
	final Font font = Font.getDefaultFont();

	private String[] option = { "1 添加歌曲", "2 删除", "3 上移", "4 下移", "5 播放控制",
			"6 歌曲信息", "7 帮助说明" ,"8 选择皮肤"}; 

	public OptionCanvas(Displayable dis, int index) {
		this.dis = dis;
		pui = (PlayerUI) dis;
		this.index = index;
		this.setFullScreenMode(true);
	}

	protected void paint(Graphics g) {
		g.setFont(font);
		// g.fillRect(0, 0, getWidth(), getHeight());
		g.setColor(210, 230, 230);
		g
				.fillRect(0, getHeight() - 20 * option.length, 100,
						20 * option.length);
		for (int i = 0; i < option.length; i++) {
			if (selected == i) {
				g.setColor(160, 180, 180);
				g.fillRect(0, selected * 20 + getHeight() - 20 * option.length,
						100, font.getHeight());
				g.setColor(255, 255, 255);
				g.drawString(option[i], 5, getHeight() - (option.length - i)
						* 20, Graphics.LEFT | Graphics.TOP);
			}
			else {
				g.setColor(0, 0, 0);
				g.drawString(option[i], 5, getHeight() - (option.length - i)
						* 20, Graphics.LEFT | Graphics.TOP);
			}
		}

	}

	public void keyPressed(int key) {
		switch (key) {
			// Canvas.UP
			case -1:
				if (--selected < 0) {
					selected += option.length;
				}
				break;

			// Canvas.DOWN
			case -2:
				selected = (selected + 1) % option.length;
				break;

			// Canvas.LEFT
			case -3:
				break;

			// Canvas.RIGHT
			case -4:
				break;

			// Canvas.FIRE
			case -5:
				int optionIndex = selected + 1;
				if (optionIndex == 1) {
					Display.getDisplay(MainMidlet.getInstance()).setCurrent(
							new SelectFileForm(pui));
				}
				if (optionIndex == 2) {
					plrms.openRS("playlistdb");
					int total = plrms.getNumOfRecords();
					plrms.closeRS();
					if (total > 0) {
						plrms.deleteSong("playlistdb",index);
						pui.initialize();
						pui.repaint();
						Display.getDisplay(MainMidlet.getInstance())
								.setCurrent(pui);
					}
				}
				if (optionIndex == 3) {
					if (index > 1) {
						plrms.moveUp("playlistdb",index);
						pui.initialize();
						pui.repaint();
						Display.getDisplay(MainMidlet.getInstance())
								.setCurrent(pui);
					}
				}
				if (optionIndex == 4) {
					plrms.openRS("playlistdb");
					int total = plrms.getNumOfRecords();
					plrms.closeRS();
					if (total > index) {
						plrms.moveDown("playlistdb",index);
						pui.initialize();
						pui.repaint();
						Display.getDisplay(MainMidlet.getInstance())
								.setCurrent(pui);
					}
				}
				if (optionIndex == 5) {
					Display.getDisplay(MainMidlet.getInstance()).setCurrent(
							new PlayControl(pui));
				}
				if (optionIndex == 6) {
						plrms.openRS("playlistdb");
						int total = plrms.getNumOfRecords();
						if (total > 0) {
						plb = plrms.getRecord(plrms.getId(index));
						String name = plb.getMusicName();
						String localUrl = plb.getMusicUrl();
						plrms.closeRS(); 
						Display.getDisplay(MainMidlet.getInstance())
								.setCurrent(
										new SongInfoForm(name, localUrl, pui));
					}
				}
				if (optionIndex == 7) {
					Display.getDisplay(MainMidlet.getInstance()).setCurrent(
							new HelpForm(pui));
				}
				if (optionIndex == 8) {
					Display.getDisplay(MainMidlet.getInstance()).setCurrent(
							new SelectSkin(pui));
				}
				break;

			// 左软键盘
			case -6:
				Display.getDisplay(MainMidlet.getInstance()).setCurrent(dis);
				break;

			// 右软键盘
			case -7:
				Display.getDisplay(MainMidlet.getInstance()).setCurrent(dis);
				break;
			case 49:
				selected = 0;
				break;
			case 50:
				selected = 1;
				break;
			case 51:
				selected = 2;
				break;
			case 52:
				selected = 3;
				break;
			case 53:
				selected = 4;
				break;
			case 54:
				selected = 5;
				break;
			case 55:
				selected = 6;
				break;
			case 56:
				selected = 7;
				break;
		}
		repaint();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -