0

我在NetbeansJava midlet中开发了一个简单的时钟应用程序。现在我想将Java Midlet应用程序设置为手机中的壁纸

我的项目中有两个文件AnimationLoopMidlet:包含startApp()函数。

AnimationLoop : 更新时间并在屏幕上绘制。这些是我的代码。

AnimationLoopMidlet.java

package mobileapplication1;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import java.util.*; 
public class AnimationLoopMIDlet extends MIDlet{

    static AnimationLoopMIDlet obj;

 public AnimationLoopMIDlet()
 {
      AnimationLoopMIDlet.obj=this;
 }

    public void startApp() {
          Display.getDisplay(this).setCurrent(new AnimationLoop());


    }     




    public void pauseApp()
        {
    }


    public void destroyApp(boolean unconditional) {

    }

}

动画循环.java

package mobileapplication1;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import java.util.*;
import javax.microedition.lcdui.game.GameCanvas;





public class AnimationLoop extends GameCanvas implements Runnable{

   boolean running;
     public AnimationLoop()
     {
         super(false);

         start();
     }
     void start()
     {
            Thread t=new Thread(this);
            t.setPriority(Thread.MAX_PRIORITY);
            t.start();
     }
     public void run()
     {
         running=true;
         while(running)
         {
             update();
             flushGraphics();
         }
     }









            public void update()
            {
                Graphics g=getGraphics();
                    Date c= new Date(); 
                String s=new String();
                s=""+c;
                g.setColor(0xffffff);
                g.setStrokeStyle(Graphics.SOLID);
                g.fillRect(0,0,240,320);

                g.setColor(0x000000);
                g.setFont(Font.getDefaultFont());

                g.drawString("Day:"+s.substring(0,4),0,14,g.LEFT | g.TOP);
                g.drawString("Month"+s.substring(4,7),0,30,g.LEFT | g.TOP);
                g.drawString("Date:"+s.substring(8,10),0,50,g.LEFT | g.TOP);
                g.drawString("Hour:"+s.substring(11,13),0,70,g.LEFT | g.TOP);
                g.drawString("Minute:"+s.substring(14,16),0,90,g.LEFT | g.TOP);
                g.drawString("Seconds:"+s.substring(17,19),0,120,g.LEFT | g.TOP);
              }      





}
4

1 回答 1

0

只有少数支持 JavaME 的手机提供此选项。

(虽然 MIDP3.0 确实成为可能,但由于 MIDP3.0 从未见过日光,我们仍然坚持使用 MIDP2.1)。

您可以通过在 JAD/MANIFEST 中添加以下属性来对一些索尼爱立信手机执行此操作:

SEMC-StandbyApplication: Y

这适用于索尼爱立信 Aino 和 Elm 以及 K800 等设备。

http://developer.sonymobile.com/downloads/code-example-module/create-standby-midlet-for-java-platform-jp-7-phones/

于 2014-03-12T06:25:30.403 回答