uiutilities.java

来自「SUN公司发布的SmartTicket 2.0蓝图」· Java 代码 · 共 152 行

JAVA
152
字号
package com.sun.j2me.blueprints.smartticket.client.midp.ui;import javax.microedition.lcdui.*;import java.util.*;public class UIUtilities {    // Contants value used among the app    public static final int ZIP_LENGTH = 5;    public static final int LOGIN_LENGTH = 4;    public static final int PASSWORD_LENGTH = 6;    public static final int SEATING_PLAN_MIN_HEIGHT = 100;    public static final int SEATING_PLAN_MIN_WIDTH = 100;    public static final int SEATING_PLAN_PREF_HEIGHT = 140;    public static final int SEATING_PLAN_PREF_WIDTH = 130;    public static final int GUARANTEED_MINUTES = 5;    public static final int CREDIT_CARD_START_YEAR = 2003;    public static final int TICKET_PRICE = 8;    public static class YearChoiceGroup extends ChoiceGroup {        private static final int NUM_YEARS = 10;        private static final int[] YEARS = new int[NUM_YEARS];        static {            int currentYear = Calendar.getInstance().get(Calendar.YEAR);            for (int i = 0; i != YEARS.length; i++) {                YEARS[i] = currentYear + i;            }         }         public YearChoiceGroup(UIController uiController) {            super(uiController.getString(UIMessageCodes.YEAR), Choice.POPUP);            append(uiController.getString(UIMessageCodes.CHOOSE_A_YEAR),                    null);            for (int i = 0; i != YEARS.length; i++) {                append(String.valueOf(YEARS[i]), null);            }         }        public int getSelectedYear() {            int selectedIndex = getSelectedIndex();            if (selectedIndex > 0) {                return YEARS[getSelectedIndex() - 1];            } else {                throw new IllegalStateException();            }         }         public void setSelectedYear(int year) {            for (int i = 0; i != YEARS.length; i++) {                if (YEARS[i] == year) {                    setSelectedIndex(i + 1, true);                    break;                }             }         }     }    public static class MonthChoiceGroup extends ChoiceGroup {        private static final int[] MONTHS = new int[] {            Calendar.JANUARY, Calendar.FEBRUARY, Calendar.MARCH,             Calendar.APRIL, Calendar.MAY, Calendar.JUNE, Calendar.JULY,             Calendar.AUGUST, Calendar.SEPTEMBER, Calendar.OCTOBER,             Calendar.NOVEMBER, Calendar.DECEMBER        };        public MonthChoiceGroup(UIController uiController) {            super(uiController.getString(UIMessageCodes.MONTH), Choice.POPUP,                   new String[] {                uiController.getString(UIMessageCodes.CHOOSE_A_MONTH),                 uiController.getString(UIMessageCodes.JAN),                 uiController.getString(UIMessageCodes.FEB),                 uiController.getString(UIMessageCodes.MAR),                 uiController.getString(UIMessageCodes.APR),                 uiController.getString(UIMessageCodes.MAY),                 uiController.getString(UIMessageCodes.JUN),                 uiController.getString(UIMessageCodes.JUL),                 uiController.getString(UIMessageCodes.AUG),                 uiController.getString(UIMessageCodes.SEP),                 uiController.getString(UIMessageCodes.OCT),                 uiController.getString(UIMessageCodes.NOV),                 uiController.getString(UIMessageCodes.DEC)            }, null);        }        public int getSelectedMonth() {            int selectedIndex = getSelectedIndex();            if (selectedIndex > 0) {                return MONTHS[getSelectedIndex() - 1];            } else {                throw new IllegalStateException();            }         }         public void setSelectedMonth(int month) {            for (int i = 0; i != MONTHS.length; i++) {                if (MONTHS[i] == month) {                    setSelectedIndex(i + 1, true);                    break;                }             }         }     }    public static class DayChoiceGroup extends ChoiceGroup {        private static final int[] DAYS = new int[] {            Calendar.FRIDAY, Calendar.SATURDAY, Calendar.SUNDAY,             Calendar.MONDAY, Calendar.TUESDAY, Calendar.WEDNESDAY,             Calendar.THURSDAY        };        public DayChoiceGroup() {            super("Day:", Choice.POPUP, new String[] {                "Choose a Day", "Friday", "Saturday", "Sunday", "Monday",                 "Tuesday", "Wednesday", "Thursday"            }, null);        }        public int getSelectedDay() {            int selectedIndex = getSelectedIndex();            if (selectedIndex > 0) {                return DAYS[getSelectedIndex() - 1];            } else {                throw new IllegalStateException();            }         }         public void setSelectedDay(int day) {            for (int i = 0; i != DAYS.length; i++) {                if (DAYS[i] == day) {                    setSelectedIndex(i + 1, true);                    break;                }             }         }     }}

⌨️ 快捷键说明

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