Jumat, 27 Februari 2009

lab aktiviti 3

midlet game canvas : cobain deh...

package GameCanvasPackage;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class MidletGameCanvas extends MIDlet {
private Display display;

public void startApp() {
display = Display.getDisplay(this);
DrawGameCanvas gameCanvas = new DrawGameCanvas();
gameCanvas.start();
display.setCurrent(gameCanvas);
}

public Display getDisplay() {
return display;
}

public void pauseApp() {}

public void destroyApp(boolean unconditional) {
exit();
}

public void exit() {
System.gc();
notifyDestroyed();
}
}

semoga berhasil...

Sabtu, 21 Februari 2009

lab aktiviti 2

Thread ker:

import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;

public class ThreadBackgroudCanvas extends GameCanvas implements Runnable {
private boolean isPlay;
private long delay;
private int currentX, currentY;
private int width;
private int height;
private int x;

public ThreadBackgroudCanvas() {
super(true);
width = getWidth();
height = getHeight();
currentX = width / 2;
currentY = height / 2;
delay = 20;
}

public void start() {
isPlay = true;
Thread t = new Thread(this);
t.start();
}

public void stop() {
isPlay = false;
}

public void run() {
Graphics g = getGraphics();
while (isPlay == true) {
x++;
if(x<-120) {
x=0;
}else {
x=x-5;
}
drawScreen(g);
try { Thread.sleep(delay); }
catch (InterruptedException ie) { }
}
}

private void drawScreen(Graphics g) {
try {
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
Image image = Image.createImage("/gbr-bg.png");
g.drawImage(image, x, (getHeight()-image.getHeight())/2, Graphics.TOP | Graphics.LEFT);
}catch(Exception e){ }
flushGraphics();
}
}

selamat mencoba!

Selasa, 17 Februari 2009

lab aktiviti

MMAP coy...

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
import javax.microedition.media.control.*;

public class MidletPlayWavMidi extends MIDlet implements PlayerListener,
CommandListener {
private Display display;
private static Player player;
private VolumeControl vc;
private List list;
private Command cmExit, cmStop;
public MidletPlayWavMidi() {
display = Display.getDisplay(this);
}
public void startApp() {
cmExit = new Command("Keluar", Command.EXIT, 1);
cmStop = new Command("Stop", Command.OK, 1);
list = new List("Menu", List.IMPLICIT);
list.append("wav", null);
list.append("midi", null);
list.addCommand(cmExit);
list.setCommandListener(this);
display.setCurrent(list);
}
public void pauseApp() { }
public void destroyApp(boolean unconditional) { }
public void commandAction(Command c, Displayable s){
if (c == List.SELECT_COMMAND){
switch (list.getSelectedIndex()){
case 0:
list.addCommand(cmStop);
try {
playMedia("wav.wav", "wav");
} catch (Exception e) {
e.printStackTrace();
}
break;
case 1:
list.addCommand(cmStop);
try {
playMedia("mid.mid", "mid");
} catch (Exception e) {
e.printStackTrace();
}
break;
}
}else if(c == cmExit){
exitMIDlet();
}else if(c == cmStop){
try{
player.stop();
if(player != null){
player.close();
}
}catch(Exception e){ }
list.removeCommand(cmStop);
}
}
public void exitMIDlet() {
destroyApp(false);
notifyDestroyed();
player = null;
}
private void playMedia(String file, String p) throws Exception {
if(p.equals("wav")){
player = Manager.createPlayer(getClass().getResourceAsStream(file), "audio/x-wav");
}else if(p.equals("mid")){
player = Manager.createPlayer(getClass().getResourceAsStream(file), "audio/midi");
}
player.addPlayerListener(this);
player.setLoopCount(-1);
player.prefetch();
player.realize();
vc = (VolumeControl)player.getControl("VolumeControl");
if (vc != null) {
vc.setLevel(100);
}
player.start();
}
public void playerUpdate(Player player, String event, Object eventData){ }
}

semoga bermanfaat...

Kamis, 05 Februari 2009

lab aktiviti

lab aktiviti jeni 4, pembelajaran kelas MidletSplashTimer :


import java.util.Timer;
import java.util.TimerTask;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDle;

public class MidletSplashTimer extends MIDlet {
private SplashTimerCanvas ttCanvas;
private Display display;
private Timer timer;
private TimerTask timerTask;

public MidletSplashTimer(){}

protected void starApp () {
display = Display.getDisplay(this);
ttCanvas = new SplashTimerCanvas (this);
display.setCurrent (ttCanvas);
}

protected void pauseApp() {}
protected void destroyApp (boolean unconditional){}

void stoptimer() {
timer.cancel();
timerTask.cancel();
}
void startTimer () {
timer = new Timer();
timerTask = new TimerTask() {
public void run() {
display.setCurrent(new SuccesCanvas());
}
};
timer.schedule (timerTask, 3000);
}
}



lab aktiviti jeni 4, pembelajaran kelas SplashTimerCanvas :


import javax.microedition.lcdui.*;


public class SplashTimerCanvas extends Canvas {
private MidletSplashTimer midletTT;
int w, h, hImg;
private Image img;

public SplashTimerCanvas (MidletSplashTimer midlet){
w = getWidth();
h = getHeight();
midletTT = midlet;
try {
img = Image.createImage("/jeni.png");
} catch (java.io.IOException e) {}
hImg = img.getHeight();
}

protected void paint(Graphics g) {
g.setColor (255, 255, 255);
g.fillRect(0, 0, w, h);
g.drawImage (img, w/2, h/2, Graphics.HCENTER | Graphics.VCENTER);
}

protected void ideNotify(){
midletTT.startTimer();
}
}

class SuccesCanvas extends Canvas {
protected void paint (Graphics g) {
g.setColor (255, 255, 255);
g.fillRect (0, 0, getWidth(), getHeight());
g.setColor (255, 0, 0);
g.drawString("BERHASILL", getWidth() /2, (getHeight() /2)-10, Graphics.TOP | Graphics.HCENTER);
g.drawString("Silakan Masuk", getWidth() /2, (getHeight() /2)+10, Graphics.TOP | Graphics.HCENTER);
}
}

Semoga Bermanfaat sobat