A NehogyMar1MIDlet.java forrás letöltése. Illetve alább bemutatjuk a forrás színesen formázott és besorszámozott változatát. Erről talán könnyebb így kérdezni és beszélni róla, mint a könyvben lévő formázatlanról.
 1 /*
 2  * NehogyMar1MIDlet.java
 3  *
 4  * Bátfai Norbert: Nehogy már a mobilod nyomkodjon Téged!
 5  * nbatfai@gmail.com
 6  * 
 7  * Ezt a forrásfájlt (és a hozzá esetlegesen kapcsolódó erőforrásokat,
 8  * például képeket) letöltheted a http://www.eurosmobil.hu/NehogyMar/ 
 9  * címről.
10  *
11  */
      
12 /**
13  * A könyv első programozási példája, bemutatja a
14  * MIDlet osztály használatát: a MIDlet objektumok
15  * életét irányító startApp(), pauseApp() és 
16 * destoyApp() metódusok használatát. 17 * 18 * @author Bátfai Norbert, nbatfai@gmail.com 19 * @version 0.0.1 20 */ 21 public class NehogyMar1MIDlet 22 // Kiterjesztjük a MIDlet osztályt: 23 extends javax.microedition.midlet.MIDlet 24 // Figyelünk majd parancsokra: 25 implements javax.microedition.lcdui.CommandListener { 26
27 /** A mobiltelefon kijelzőjét reprezentáló objektum. */ 28 javax.microedition.lcdui.Display mobilKijelzoje = 29 javax.microedition.lcdui.Display.getDisplay(this); 30 /** A Kilépés gombot reprezentáló objektum. */ 31 javax.microedition.lcdui.Command kilepesGomb = 32 new javax.microedition.lcdui.Command("Kilépés", 33 javax.microedition.lcdui.Command.EXIT, 20); 34 /** Egy "karatkeres" képernyőt reprezentáló objektum. */ 35 javax.microedition.lcdui.Form karakteresKepernyo; 36
37 /** Mit tegyek én (this, azaz az aktuális MIDlet objektum) 38 * ha elindítottak? */ 39 public void startApp() { 40 // Elkészítek egy "karakteres" képernyőt 41 karakteresKepernyo = 42 new javax.microedition.lcdui.Form("Nehogy már a"); 43 // aminek a címe az, hogy "Nehogy már a" 44 // Erre a "karakteres" képernyőre pedig ráteszek egy 45 // szöveges elemet, ami két részből áll 46 karakteresKepernyo.append(new
47 javax.microedition.lcdui.StringItem("Nehogy már a", 48 "mobilod nyomkodjon Téged!")); 49 // Legyen a kijelzőn az imént készített 50 // "karakteres" képernyő látható! 51 mobilKijelzoje.setCurrent(karakteresKepernyo); 52 // Legyen a "karakteres" képernyőn a Kilépés parancs! 53 karakteresKepernyo.addCommand(kilepesGomb); 54 // Aztán, ha kattintanak rajta, akkor majd 55 // én (this, azaz az aktuális MIDlet objektum) 56 // reagálok erre a commandAction() viselkedésemben. 57 karakteresKepernyo.setCommandListener(this); 58 } 59
60 /** Mit tegyek én (this, azaz az aktuális MIDlet objektum) 61 * ha futásom közben jön egy SMS, vagy hívja valaki a 62 * tulajomat? */ 63 public void pauseApp() { 64 } 65
66 /** Mit tegyek én, ha futásomnak vége... */ 67 public void destroyApp(boolean unconditional) { 68 } 69
70 /** Mit tegyek, ha valami esemény keletkezett? */ 71 public void commandAction(javax.microedition.lcdui.Command command, 72 javax.microedition.lcdui.Displayable displayable) { 73 // Ha a Kilépés gombra nyomtak, akkor 74 if (command == kilepesGomb) // jelzem, hogy kipusztítom magam. 75 { 76 notifyDestroyed(); 77 } 78 } 79 } 80
81