infotwilight.java

来自「这是一个手机上的J2ME程序」· Java 代码 · 共 42 行

JAVA
42
字号
// J2ME Compass
// Copyright (C) 2007 Dana Peters
// http://www.qcontinuum.org/compass

package org.qcontinuum.compass;

import java.util.*;
import javax.microedition.lcdui.*;
import org.qcontinuum.astro.*;

public class InfoTwilight extends Progress {
    
    private Displayable mParent;

    public InfoTwilight(Displayable parent) {
        super("Twilight", parent);
        mParent = parent;
        start();
    }

    public void run() {
        Date localDate = Compass.getDate();
        SunMoonPosition sunMoonPosition = new SunMoonPosition(localDate);
        HorizontalPosition sunPosition = sunMoonPosition.getSunPosition();
        Location location = Compass.getPreferences().getLocation();
        InfoDisplay infoDisplay = new InfoDisplay("Twilight", mParent);
        appendTwilight(infoDisplay, "Civil", RiseSetTime.CIVILIANTWILIGHT, location, localDate);
        appendTwilight(infoDisplay, "Nautical", RiseSetTime.NAUTICALTWILIGHT, location, localDate);
        appendTwilight(infoDisplay, "Astronomical", RiseSetTime.ASTRONOMICALTWILIGHT, location, localDate);
        if (isShown())
            Compass.display(infoDisplay);
    }
   
    private void appendTwilight(InfoDisplay infoDisplay, String title, int event, Location location, Date localDate) {
        RiseSetTime riseSetTime = new RiseSetTime(event, location.getGmt(localDate),
                location.getDstOffset(localDate), location.getEarthPosition());
        infoDisplay.append(new StringItem(title + " Twilight", " \n"));
        infoDisplay.append(new StringItem("Begin:", Compass.getTime(riseSetTime.getRiseTime()) + "\n"));
        infoDisplay.append(new StringItem("End:", Compass.getTime(riseSetTime.getSetTime()) + "\n"));
        infoDisplay.append(new StringItem(null, " \n"));
    }
}

⌨️ 快捷键说明

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