J2ME GPS定位JSR 179实例2

来源:技术人生 责任编辑:栏目编辑 发表时间:2013-07-01 21:45 点击:
//为何在模拟器上OK,在手机上就不行呢?

import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;
import javax.microedition.location.*;

class MyCanvas extends Canvas
{

    GISMIDlet GIS;

    public MyCanvas(GISMIDlet GIS)
    {
        this.GIS = GIS;
    }
    private double lat;
    private double lon;

    public void setInfo(double lat, double lon)
    {
        this.lat = lat;
        this.lon = lon;
    }

    protected void paint(Graphics g)
    {
// TODO 自动产生方法 Stub
        Font f = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,
                Font.SIZE_SMALL);
        g.setFont(f);

// use font height as a line height
        int lineHeight = f.getHeight();
// current line counter
        int line = 0;
        g.setColor(0xffffff);
        g.fillRect(0, 0, getWidth(), getHeight());

        g.setColor(0x0000ff);

        g.drawString("Lat, Lon (" + GIS.formatDouble(lat, 5) + ", " + GIS.formatDouble(lon, 5) + ")", 0, lineHeight * (line++), Graphics.TOP | Graphics.LEFT);

    }
}

public class GISMIDlet extends MIDlet implements CommandListener, LocationListener
{

    private Command exitCmd = new Command("Exit", Command.EXIT, 1);

//private Form mainForm;
    private MyCanvas myCanvas;
    protected double lat; // 纬度
    protected double lon; // 经度

//private LocationProvider locationProvider;

//private TextField latField; // 緯度欄位

//private TextField lonField; // 經度欄位
    public GISMIDlet()
    {
        /* mainForm = new Form("GIS 經緯度測試");
        latField = new TextField("緯度:", formatDouble(lat, 5), 15,
        TextField.DECIMAL); // 設定緯度欄位格式
        lonField = new TextField("經度:", formatDouble(lon, 5), 15,
        TextField.DECIMAL); // 設定經度欄位格式
        mainForm.append(latField); // 增加緯度欄位
        mainForm.append(lonField); // 增加經度欄位
        mainForm.addCommand(exitCmd); // 增加軟體按鈕
        mainForm.setCommandListener(this); // 監聽按鈕事件 */
        myCanvas = new MyCanvas(this);
        myCanvas.addCommand(exitCmd);
        myCanvas.setCommandListener(this);
        Display.getDisplay(this).setCurrent(myCanvas); // 顯示畫面
    }

    protected void startApp() throws M

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • Java编程语言的八大优点
      • JVM对象生命周期详细介绍
      • Java平台上的CRM系统
      • Java 算数测试小程序
      • Command(命令模式)
      • Java 一个简单的画图程序
      • Java环境 使用Resin在NT环境下配置JSP环境
      • Java 日历的小程序
      • Java 统计代码的小工具
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1