Ahol a feladatban grafikus felület szerepel, ott szöveges be/kimenet értendő. -------------------------------------- Az első két feladatot a megadott sorrendben kell megoldani. Az a) és b) jelű feladatokat tetszőleges sorrendben lehet megoldani. 2 ------------------------------------ Készíts egy grafikus alkalmazást Swing eszközkészlettel, amely egy mobiltelefon-szimulátort valósít meg. A telefonszimulátor főprogramja legyen a TelefonSzimulator osztályban. Ez nyissa meg kezdetben a szimulátor ablakát. Az ablak tartalmazzon tizenkét nyomógombot: minden számjegynek egyet (0-9), valamint egyet a hívás kezdeményezésére/felvételrére (ennek legyen zöld a háttérszíne), egyet pedig a hívás befejezésére (ennek pedig piros). A telefonszimulátornak legyen továbbá egy kijelzője, egy JTextArea. A kijelző kezdetben tartalmazza a készülék saját telefonszámát, amelyet a főprogram parancssori paraméterként kap meg. 3 ------------------------------------ Kezeld a gombnyomásokat a következőképpen. A számokat ábrázoló gombokat lenyomva jelenjen meg a rajta található szám a telefon kijelzőjén. A letevő gomb megnyomására törlődjön a kijelző tartalma. a) ------------------------ Egészítsd ki a felületet úgy, hogy az alkalmas legyen telefonkönyv megvalósítására. Ehhez a zöld hívó gomb megnyomására jegyezd fel a kijelző tartalmát (a hívott számot). A saját számunkat ne lehessen felhívni. Adj a felülethez két gombot: fel és le. Ezekkel lehessen lépkedni a hívási előzmények listájában: az aktuális elem kerüljön ki a kijelzőre. Ha kiértünk a lista elejére/végére, újabb fel/le gombnyomásra ismét az első/utolsó elem kerüljön a kijelzőre. b) ------------------------ Bővítsd ki a telefon nyomógombjait úgy, hogy azokkal betűket is be lehessen vinni. Az egyes nyomógombokhoz rendeljük hozzá létrehozáskor azt, hogy milyen betűket lehet vele bevinni. (Pl. az 1-es nyomógomb sorban az '1', 'a', 'b', 'c' jeleket adja ki.) Az olvashatóság kedvéért a gomb felirata is tükrözze ezt. Ezután a gomb lenyomása a következőképpen működjön. Ha a kijelzőn megjelent utolsó karakter az adott gombtól jön, akkor az cserélődjön le sorrendben a következő karakterre; ha más gombbal vitték be az utolsó karaktert, akkor a sorrendben első karakter kerüljön a kijelző végére. Példa: a gombok beviteli lehetőségei a következők: 1abc 2def 3ghi ... a gombnyomások sorrendben: 1 1 2 1 3 3 3 3 3 2 2 2 2 1 a kijelző tartalma ezután: a213f1