Citat:
Ursprungligen inskrivet av Zapher
Tänkte merpå program nu i början. Spel får det bli när projektarbetet är över.
Keyboard-klassen borde väl funka? Den läser iofs från terminalen.
Keyboardklassen fungerar inte, inte heller System.in/System.out, AWT eller JFC/Swing.
J2ME är utvecklat för små 'handenheter' (pratar om MIDP) som har begränsade egenskaper jämfört med en vanlig persondator (som liten skärm, möjligtvis färg, kanske tangentbord eller knappsats).
Därför har man dels begränsat klassbiblioteket så att det är avsevärt mindre än J2SE.
För att också göra utveckling smidigare (för praktiska applikationer) så tog man fram ett nytt api för in och utdata kallat lcdui. Detta paket (javax.microedition.lcdui) innehåller både högnivå- och lågnivåfunktioner. Med högnivå menar jag färdiga funktioner för att bygga upp ett gränssnitt (som Swing/Awt där du skapar ett fönster, lägger in knappar i det och anger egenskaper för hur komponenterna ska se ut). Lågnivå är mer när man begär att få tillgång till hela skärmen och ansvarar själv i detalj hur allt ska ritas upp. I lcdui finns också stöd för att fånga upp lågnivåhändelser på knappsatsen (telefoner har ju oftast en numerisk knappsats och ibland ett styrkors och 'välj'-knapp(ar)).
Så om du vill göra ett icke-spel till telefonen så brukar tillvägagångssättet vara.
1) Skapa dig en midlet-klass, se till så att du fångar start och stopphändelserna (metoder som du får överlagra)
2) Skapa en javax.microedition.lcdui.Form , lägg in andra lcdui-komponentern i Form:et (som textfält till exempel för att hämta indata)
3) Skapa en Command (i princip knapp, men den är oftast placerad vid systemknapparna för val, dvs knapparna precis under skärmen på de flesta Nokiatelefoner till exempel) som bearbetar indatat (kan visa andra forms, eller vad som helst)
4) Använd javax.lcdui.Display.getDisplay(minFinaMidlet).setDisplay(minSkapadeForm)
Ett starkt tips är att titta i javadocen som följer med the Wireless Toolkit (WTK). Javadocen täcker CLDC/MIDP vilket är den konfigurering som används till mobiltelefoner. Där ser du också vilka klasser som finns till skillnad från J2SE.
(Tyvärr så lyckades jag inte hitta någon sida hos Sun som jag kunde direktlänka till)
//C