70
© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 1 Felhasználói Felület Tervezése és Készítése Java ME Platformon Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatika Tanszék Ekler Péter 

09 J2ME_UI_v2

Embed Size (px)

Citation preview

Page 1: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 1/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 1

Felhasználói FelületTervezése és Készítése

Java ME Platformon

Budapesti Műszaki és Gazdaságtudományi Egyetem

Automatizálási és Alkalmazott Informatika Tanszék

Ekler Péter 

Page 2: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 2/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 2

GyorskérdésMire használható a NetBeans

FlowDesigner?

Page 3: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 3/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 3

Tartalom

Bevezetés Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 4: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 4/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 4

 A felhasználói felület céljaiElérhetővé tegye az alkalmazás funkcióitElfedje a felhasználó elől a program

összetettségét

Megkönnyítse az alkalmazás használatát

Fontos információk átlátható formátumban

való megjelenítéseBarátságosabbá tegye a programot

Page 5: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 5/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 5

Korlátozások mobil készülékekenKis kijelzőBeviteli eszközök korlátai

Nincs egér 

Nincs QWERTY billentyűzet

Csak a mobiltelefon billentyűje áll arendelkezésre

Kezd elterjedni az érintőképernyő és ahangfelismerés is

Page 6: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 6/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 6

Tipikus J2ME UI

Beépített GUI elemek „Kézzel rajzolt” UI

Page 7: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 7/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 7

Tartalom

Bevezetés Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 8: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 8/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 8

 Az igényes felhasználói felület előnyeiSzép és átlátható alkalmazást könnyebb

értékesíteni

Pl.: egy autóversenyes játék lehet nagyon

primitív, ha szép grafikával rendelkezik.A felhasználókat első ránézésre a felülettel

lehet megnyerni, nem pedig a

funkcionalitással

Page 9: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 9/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 9

Felhasználói szokások I.Amennyiben a felület első ránézésre nemátlátható, könnyen kezelhető, akkor a

felhasználók nem szívesen használják azalkalmazást

A felhasználók a lehető legegyszerűbbenszeretnék az alkalmazásokat használni

Nem célravezető, ha a felhasználóknaksok felesleges adatot kell megadniuk,ezért érdemes például a szövegmezőketkezdetben alapértékekkel feltölteni

Page 10: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 10/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 10

Felhasználói szokások II.Ügyelni kell arra, hogy a beviteli mezőkbe

a felhasználók ne tudjanak hibás értékeketmegadni

Pl.: ÉÉÉÉ.HH.NN formátum esetén gyakrankötőjellel írják az dátumot. Megoldás: afelhasználó válassza ki a kívánt dátumot egyDateField mezőből.

Page 11: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 11/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 11

Példa hibás felhasználói felület kialakítására

Linux ATM

Tisztelt ügyfelünk!

Bankunk hálózatának fejlesztése keretében, valamint aköltségek csökkentése érdekében ATM-jeinket Linuxoperációs rendszerre állítjuk át.Készpénzfelvételhez használja a getcash parancsot.Szintaxis:getcash -ac számlaszám (hexában) -c kártyaszám(hexában) -p pinkód (MD5 hashként) -a összeg(hexában) -b bankazonosító (128 bites egyediszámlavezető bankazonosító)Ha bizonylatot szeretne kapni a tranzakcióról, akkor irányítsa a getcash parancs stdout- ját a /dev/lp0-ba,

szükség esetén grep-ezze ki az értékes sorokat.

Page 12: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 12/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 12

Felhasználói felület J2ME platformon J2ME alkalmazás több típusú készüléken

futtatható

A különféle készülékek eltérő kijelző

mérettel és kezelőszervekkel rendelkeznek

Page 13: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 13/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 13

Egységes J2ME alkalmazások Nehéz (praktikusan lehetetlen) olyan

alkalmazásokat készíteni, amelyekegységesen jelennek meg minden

eszközön, de törekedni kell rá Pl.: eltérő képernyőméret, képernyőarány,

színmélység, használható memória, stb.

A felhasználói felületre szinte nincsmegkötés – a telefon gyártói határozzákmeg

Page 14: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 14/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 14

MIDP LCDUI

A J2SE megszokott grafikai elemei (awt,swing) nem használhatók a mobiltelefonon

Túl nagyok

Átlapolódó ablakokat használnak

Ezért hoztak létre egy teljesen új GUI-t:MIDP LCDUI

Optimalizált a kisméretű kijelzőkhöz

Tipikus felhasználói felületelemek kialakítása:lista, űrlap

Page 15: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 15/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 15

LCDUI alkalmazástípusok  Játékok

A legfontosabb alkalmazási terület

Teljes ellenőrzés a kijelző felett

Pixelre pontosan meg lehet adni, hogy mi hovakerüljön

Űrlap alapú alkalmazások

Egyszerűen elkészíthető Az előre elkészített elemek átláthatók és könnyen

használható

Egyéb

Page 16: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 16/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 16

J2ME alkalmazás felülete J2ME alkalmazás eltérő típusú

készülékeken futtatható

Csak olyan előre elkészített felületelem

használható, amely a legtöbb készülékenmegjeleníthető

Az előre elkészített felületelemek skálája

szűk

Page 17: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 17/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 17

Tartalom

Bevezetés Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 18: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 18/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 18

Screen fogalma

J2ME platformon a Screen jelenti a kijelző, mint konténer típusát

Különféle típusú konténerek különféle elemekmegjelenítésre használatosak

6+1 féle Screen-t definiáltak: List

TextBox

Alert

SpalshScreen

WaitScreen Form

Canvas Erre bármit lehet rajzolni

Page 19: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 19/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 19

List Screen

Nem mindig fér el egy sokelemű listaa többi GUI elem között

List Screen esetében csak egy listatalálható a kijelzőn

Lehet felsorolás jellegű,

egyválasztásos, többválasztásos(implicit, exclusive, multiple)

Page 20: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 20/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 20

List Screen példák 

Implicit Exclusive Multiple

Page 21: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 21/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 21

TextBox Screen

Teljes kijelzősszövegbeviteli mező

Nagyobb mennyiségű

szöveg bevitelérehasználható

Rövidebb szöveg

bevitelére inkább aFormok-on elhelyezhetőTextBox javasolt

Page 22: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 22/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 22

 Alert Screen

Figyelmeztető ablakHiba megjelenítésére

Felhasználótájékoztatására

A megjelenési módja a

készülék típusától függ

Page 23: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 23/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 23

Form Screen

A legtöbbször használt Screen

GUI elemek

tárolásához ésmegjelenítéshezegyfajta

konténerkénthasználatos

Form példa háromGUI elemmel:

Page 24: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 24/70© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 24

Screen-ek kezeléseAz alkalmazás elindítása után a

felhasználó lépeget a különbözőScreenek között

A képernyők megjelenítését a Displayosztályon keresztül vezérelhetjük

Screen váltása:Display.getDisplay(this).setCurrent(nextScreen);

Page 25: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 25/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 25

Screen-ek közötti navigációAz alkalmazás általában több Screen-

ből áll

Átlátható módon kell megvalósítani anavigálást, váltást a nézetek között

A felhasználónak mindig tudnia kell,

milyen nézetet lát éppen, illetvehogyan tud visszajutni a kezdőnézetre

Page 26: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 26/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 26

Navigáció megvalósításaA legtöbb fejlesztőeszköz támogatja

beépített designer segítségével anavigáció kialakítását, például az

alábbi módon (NetBeans FlowDesigner):

Page 27: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 27/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 27

Tartalom

Bevezetés Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 28: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 28/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 28

 A beépített GUI elemek A mobil készülékeken találhatók előre

elkészített GUI elemek

Célszerű ezeket használni, mivel ezeka telefonra vannak optimalizálva(méret, megjelenés tekintetében)

Page 29: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 29/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 29

Formok GUI elemei

StringItemTextField

ImageItem

Spacer

Gauge

DateFieldChoiceGroup

TableItem

Page 30: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 30/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 30

GUI elemek tulajdonságaiAz elemek kitöltik a kijelző teljes

szélességét

Egymás alatt helyezkednek elMinden elem rendelkezik saját

azonosítóval és egyedi

tulajdonságokkal

Page 31: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 31/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 31

StringItem

Megjelenés módja: Két elemből áll (Label, Text),

melyekre külön hivatkozhatunk

Funkciója: Szöveges információ megjelenítése

Megjegyzés:

Nem kötelező mindkét elemnekértéket adni

Page 32: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 32/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 32

TextField

Megjelenés módja: Egy szöveg, amely a beviteli mező

címe, illetve a beviteli mező

A két elemre külön-külön

hivatkozhatunk

Funkciója: Szövegbevitel

Megjegyzés: A mező címe lehet üres String

Az egyes telefontípusok eltérően jelenítik meg

Page 33: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 33/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 33

ImageItem

Megjelenés módja: Egy szöveg, mely tulajdonképpen a

kép címe, valamint maga a kép

Az elemekre külön-különhivatkozhatunk

Funkciója:

Kép megjelenítése

Megjegyzés:

.jpg, .png, .gif formátumú lehet

Page 34: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 34/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 34

Spacer

Funkciója: Két elem között távolság tartása

A távolság állítható

Megjegyzés: Az Item-ek egymás alatt vannak,

csak Spacer elhelyezésével lehetköztük nagyobb teret hagyni

Page 35: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 35/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 35

Gauge

Hasonló a ProgressBar -hoz Funkciója:

Lépcsőszerű oszlopos, vagy vízszintes elrendezésselvizuálisan mutatja az értéket

Normál Interactive

Page 36: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 36/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 36

DateField

Megjelenés módja: A dátum mező címe, illetve a dátum különféle

formátumban (Date, Time, DateTime)

Funkciója: Dátum/idő megjelenítése

Megjegyzés: A mező címe lehet üres String

Page 37: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 37/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 37

DateField példa

Page 38: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 38/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 38

ChoiceGroup

Megjelenés módja: Cím, illetve a választandó elemek listája

Funkciója:

Lista elemeiből lehet választani

Megjegyzés:

Többféle típusú megjelenítési módot támogat

Page 39: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 39/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 39

ChoiceGroup - típusok 

Multiple (==ChoiceBox): több elemválasztható ki egyidejűleg

Exclusive (==RadioButton): csak egylistaelem jelölhető ki

Popup (==ListBox): legördülő listából

választható ki egy elem

Page 40: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 40/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 40

ChoiceGroup példa

Exclusive Multiple Popup

Page 41: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 41/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 41

TableItem

Megjelenés módja: A tábla címe és a

táblamodell

állítható beFunkciója:

Táblázat

megjelenítése

Page 42: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 42/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 42

Felhasználói felület kialakításaA legtöbb fejlesztőeszközben megtalálható

egy ScreenDesigner nevű eszköz(NetBeans Screen Designer):

Page 43: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 43/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 43

Tartalom

Bevezetés Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 44: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 44/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 44

Felhasználói parancsok beviteli módja

A telefon parancsgombjaihoz (Softkey)lehet különféle eseményeket (akciókat)rendelni

Lehetőség van kettőnél több akciódefiniálására is

Ebben az esetben az akció prioritása

határozza meg a menüben elhelyezkedősorrendet

Page 45: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 45/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 45

Menükezelés

Amennyiben több parancsot kezelünk azalkalmazásban, mint amennyiparancsbillentyű található a készüléken,

akkor egy felugró menüből választhatjuk kia megfelelő parancsot

A menü elemei a gombhoz rendelt akciók

a megadott prioritás sorrendjében

Page 46: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 46/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 46

 A GUI elemek elhelyezése

Egy GUI elemet általában akár egy sorralis létre lehet hozni

Pl.: rblCinema = new ChoiceGroup("rblCinema", ChoiceGroup.EXCLUSIVE);

Létrehozás után az elemet hozzá kell adnia megfelelő Form-hoz

Az elkészült kód könnyen olvashatóLogikus felépítésű, világos struktúrájú

Page 47: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 47/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 47

Egy egyszerű Form létrehozásapublic UserForm1(String title) {

super("");setTitle("Film");

rblCinema = new ChoiceGroup("rblCinema", ChoiceGroup.EXCLUSIVE);

rblCinema.append("Corvin", null);

rblCinema.append("Idjos", null);

append(rblCinema);

addCommand(new Command("Options", Command.OK, 1));

addCommand(new Command("Törlés", Command.OK, 2));

ChoiceGroup rblDate = new ChoiceGroup("rblDate", ChoiceGroup.EXCLUSIVE);

rblDate.append("06/06/2005 17:00", null);

rblDate.append("06/06/2005 19:00", null);

append(rblDate);

Gauge tickets = new Gauge("Tickets", true, 200, 50);

append(tickets);

ChoiceGroup rblFilmTitle = new ChoiceGroup("rblDate", ChoiceGroup.EXCLUSIVE);

rblFilmTitle.append("Film Title1", null);

rblFilmTitle.append("Film Title2", null);

append(rblFilmTitle);

}

Page 48: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 48/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 48

 A létrehozott Form

Page 49: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 49/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 49

Tartalom

Bevezetés Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 50: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 50/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 50

Canvas

A nem űrlap alapú alkalmazások nagyrésze ezt használja

Bármit, bárhova lehet rajzolni

A képernyő pontosan úgy jelenik meg, ahogyazt lekódoltuk

Játékok nagy része Canvas-ra épül

Page 51: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 51/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 51

Canvas kezelése

Saját Canvas osztály létrehozásaszármaztatással

import javax.microedition.lcdui.*;

public class MyCanvas extends Canvas {public void keyPressed( int keycode ) {

// Billentyűnyomás eseménykezelő....

}

public void paint( Graphics g ) {// A Canvas újrafestésekor hívódik meg. A Canvas-ban kötelező implementálni.}

}

Page 52: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 52/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 52

Canvas eseménykezelése

Többféle eseménykezelő metódusa van Pl.: keyPressed(int keyCode),

keyReleased(int keyCode)

Külön említésre méltó a showNotify(), és ahideNotify(), melyek akkor hívódnak meg,ha a Canvas előtérben/hátérbe kerül

Page 53: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 53/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 53

showNotify() – hideNotify()

Nem csak a MIDlet fut a mobil készülékenA MIDlet futása közben érkezhet például

telefonhívás, melynek ablaka eltakarja a

MIDlet-et Ekkor hívódik meg hideNotify() függvény

Amikor a MIDlet újra előtérbe kerül, akkor 

hívódik meg a showNotify() függvény

Page 54: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 54/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 54

Canvas Példaimport javax.microedition.lcdui.*;

public class MyCanvas extends Canvas{

private HelloMidlet midlet;

public MyCanvas(HelloMidlet aMidlet) {

midlet = aMidlet;

}public void paint( Graphics g ) {

g.setColor(0,0,0);

g.fillRect(0,0,getWidth(),getHeight());

g.setColor(255,0,0);

g.fillRect(40,40,50,50);

}

public void keyPressed( int keycode ) {

midlet.getDisplay().setCurrent(midlet.get_helloForm());

}

}

Page 55: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 55/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 55

Tartalom Bevezetés

Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 56: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 56/70

Érintőképernyő támogatása

A Form elemei alapértelmezetten támogatjáka platformon keresztül

Canvas esetében a megfelelő függvények

felüldefiniálásával reagálhatunk az érintéseseményekre

Telepítés után beállítható, hogy

érintőképernyő telefonon milyen on-screenbillentyűzet jelenjen meg

A MIDP nem írja elő kötelezően az

érintőképernyő támogatását© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 56

Page 57: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 57/70

Érintés események a Canvas osztályból

Képernyő lenyomásának kezelése:protected void pointerPressed(int x, int y) {}

Képernyő felengedés esemény:protected void pointerReleased(int x, int y) {}

Folyamatos mozgatás a képernyő nyomva tartásamellett:

protected void pointerDragged(int x, int y){}

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 57

Page 58: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 58/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 58

Tartalom Bevezetés

Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 59: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 59/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 59

NetBeans Projekt Kezelő

Page 60: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 60/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 60

Screen-ek, Parancsok és Erőforrások 

Page 61: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 61/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 61

NetBeans Flow Designer

Page 62: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 62/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 62

NetBeans GUI Tools

Page 63: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 63/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 63

NetBeans Properties

Page 64: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 64/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 64

NetBeans Screen Designer

Page 65: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 65/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 65

DEMO

Űrlap készítés a Designer -ekhasználatával

Canvas példa

Page 66: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 66/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 66

Tartalom Bevezetés

Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 67: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 67/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 67

Összefoglalás

Felhasználói felület kialakítása mobilkészüléken eltér egy PC-s alkalmazásétól

A kijelzőn megjeleníthető Screen-ek több

csoportba oszthatók: Űrlapok, Listák,Figyelmeztető ablakok, teljes kijelzősCanvas-ok

A fejlesztőeszközök különféle Designer -eksegítségével támogatják a felhasználóifelület kialakítását

Page 68: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 68/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 68

Tartalom Bevezetés

Felhasználói felület, felhasználói szokások

J2ME alkalmazás felülete (Screen-ek)

Felhasználói felület kialakítása

Beépített GUI elemek, űrlapok létrehozása Menü és parancs kezelés

A Canvas használata

Érintőképernyő használata

NetBeans bemutatása UI tervezéshez Tervezőeszközök

Példa alkalmazások

Összefoglalás

Teszt

Page 69: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 69/70

© BME-AAIT 2010 Felhasználói Felület Tervezése és Készítése J2ME Platformon 69

Teszt

1. Mire szolgál a Screen Designer?2. Mik a lényeges különbségek, ha

beépített GUI elemeket, illetve Canvas-t

használunk a UI kialakításához?3. Mik a GUI elemek legfőbb tulajdonságai?

4. Mire szolgál a showNotify() függvény?

5. Mit jelent az Exclusive ChoiceGrouptulajdonság?

Page 70: 09 J2ME_UI_v2

8/3/2019 09 J2ME_UI_v2

http://slidepdf.com/reader/full/09-j2meuiv2 70/70

Kérdések