Verify Area Code
/*-------------------------------------------------- * VerifyAreaCode.java * * Example from the book: Core J2ME Technology * Copyright John W. Muchow http://www.CoreJ2ME.com * You may use/modify for any non-commercial purpose *-------------------------------------------------*/ import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class VerifyAreaCode extends MIDlet implements CommandListener { private Display display; // Reference to Display object private Form fmMain; // The main form private Command cmTest; // Next label and message private Command cmExit; // Command to exit the MIDlet private TextField tfPhone; // Phone number private String areaCodeTable [][] = { {"512", "912"}, // Old area code, new area code {"717", "917"} }; public VerifyAreaCode() { display = Display.getDisplay(this); // Create commands cmTest = new Command("Test", Command.SCREEN, 1); cmExit = new Command("Exit", Command.EXIT, 1); // Textfield for phone number tfPhone = new TextField("Phone:", "", 10, TextField.PHONENUMBER); // Create Form, add Commands & textfield, listen for events fmMain = new Form("Area Codes"); fmMain.addCommand(cmExit); fmMain.addCommand(cmTest); fmMain.append(tfPhone); fmMain.setCommandListener(this); } // Called by application manager to start the MIDlet. public void startApp() { display.setCurrent(fmMain); } public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void commandAction(Command c, Displayable s) { if (c == cmTest) { if (tfPhone.size() == 10) { char buffer[] = new char[10]; // Get phone number into byte array tfPhone.getChars(buffer); // Call method to check the area code table. // Create a new StringItem to display, // passing in 'null' as the StringItem StringItem tmp = new StringItem(null, ("The area code " + (areaCodeLookup(buffer) ? "has" : "has not") + " been updated.")); // Place at the end of the form if (fmMain.size() == 1) // Only tfPhone on form fmMain.append(tmp); else // Replace previous StringItem fmMain.set(1, tmp); } } else if (c == cmExit) { destroyApp(false); notifyDestroyed(); } } /*-------------------------------------------------- * Compare the area code the user entered with the * area code table. If a match is found, replace * the user's code with the new code from the table *-------------------------------------------------*/ private boolean areaCodeLookup(char [] buffer) { // Get the area code (only) from the users entry String str = new String(buffer, 0, 3); for (int x = 0; x < areaCodeTable.length; x++) { // If we find a match in the table if (str.equals(areaCodeTable[x][0])) { // Delete the area code tfPhone.delete(0, 3); // Insert the new area code tfPhone.insert(areaCodeTable[x][1].toCharArray(), 0, 3, 0); return true; } } return false; } }
1. | Create Form With Items | ||
2. | GUI Test in MIDlet | ||
3. | Login Midlet | ||
4. | Change Label Text | ||
5. | Form Scroll | ||
6. | Form Juggle | ||
7. | Form Example MIDlet | ||
8. | Display Stats | ||
9. | Read Display File |