Graafinen käyttöliittymä, osa 1



Samankaltaiset tiedostot
Graafinen käyttöliittymä, osa 2

Graafinen käyttöliittymä, osa 3

GRAAFISEN KÄYTTÖLIITTYMÄN OHJELMOINTI JAVA SWING

Osio 4: Graafinen käyttöliittymä

Osio 4: Graafinen käyttöliittymä

Olio-ohjelmointi Käyttöliittymä

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op

Eclipse & WindowBuilder

Viestinvälitysarkkitehtuurit Lähtökohta:

Graafisen käyttöliittymän ohjelmointi

Viestinvälitysarkkitehtuurit

Tietojen syöttäminen ohjelmalle. Tietojen syöttäminen ohjelmalle Scanner-luokan avulla

JAVA-OHJELMOINTI 3 op A274615

Harjoitustyö (TKO_2023)

Ohjelmoinnin peruskurssien laaja oppimäärä

Olio-ohjelmointi Suunnittelumallit Adapter ja Composite. 1. Adapter

Muusta kuin vesisioista

Luento 6. T Ohjelmoinnin jatkokurssi T1 & T Ohjelmoinnin jatkokurssi L1. Luennoitsija: Otto Seppälä

Ohjelmistoarkkitehtuurit kevät

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

Opettajan arviointinäkymä

Ohjelmoinnin perusteet Y Python

HELIA 1 (1) Outi Virkki Käyttöliittymät ja ohjelmiston suunnittelu :04

Olio-ohjelmointi: Luokkien toteuttaminen. Jukka Juslin

Jussi Antero Tuori LOHKOKIRJANPITO-SOVELLUS

Ohjelmistokehykset ohjelmistorunkoja uudelleenkäyttö olioperustaisista ohjelmistorunko

Tapahtumapohjainen ohjelmointi

Ohjelmistoarkkitehtuurit

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:

Hirviö. Design Patterns

OHJE Jos Kelaimeen kirjautuminen ei onnistu Mac-koneella Sisällys

Hirviö. Design Patterns

Sähköposti ja uutisryhmät

Ohjelmointi 5: Miinaharava

TIE Ohjelmistojen suunnittelu

Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä

Luento 5. T Ohjelmoinnin jatkokurssi T1 & T Ohjelmoinnin jatkokurssi L1. Luennoitsija: Otto Seppälä

WINDOWS MICROSOFT OUTLOOK 2010:N UUDET OMINAISUUDET...

Ohjelmistojen mallinnus Ohjelmistoarkkitehtuuri Harri Laine 1

TIETOKONEEN ASETUKSILLA PARANNAT KÄYTETTÄVYYTTÄ

FORMATIIVINEN ARVIOINTI

Javan GUI Scratchaajalle

Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia.

Tulorekisteri: Vakuuttamisen poikkeustilanteet Visma Fivaldi

VHOPE-sovelluksen ja VHOPE-kirjastotiedostojen asentaminen

Ohjelmoinnin peruskurssien laaja oppimäärä, kevät

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T

Graafisen käyttöliittymän ohjelmointi Syksy 2013

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Pakkaukset ja määreet

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

CAB Plan. CAB Plan Päivitys 5.2

Versio 1.1 P/N Copyright 2002, ATI Technologies Inc. Kaikki oikeudet pidätetään.

Painonhallinta. Kirjaudu sovellukseen antamalla käyttäjätunnus ja salasana.

Viva-16. Käyttöohje Veikko Nokkala Suomen Videovalvonta.com

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki

11/20: Konepelti auki

BlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä

kertaa samat järjestykseen lukkarissa.

Pedacode Pikaopas. Web Service asiakasohjelman luominen

Harjoitustehtävät ja ratkaisut viikolle 48

TornaMarket-Metsät metsätilamarkkinointisovelluksen käyttöohje (ohje tehty PC käytölle)

Tulosta yrityksesi tuloslaskelma ja tase myöhempää tarkastusta varten. Ota varmuuskopio tilanteesta ennen tilimuunnosta.

Ohjelmistojen mallintaminen, arkkitehtuuria ja rajapintoja

Palveluperustaiset arkkitehtuurityylit

Huawei E3276s ohjelmistopäivitys

2013 -merkistä tunnistat uudet ominaisuudet

Opinnäytetyö (AMK) Tietotekniikan koulutusohjelma. Sulautetut ohjelmistot. Sami Lindgren LAITEREKISTERI. TURUN AMK:N OPINNÄYTETYÖ Sami Lindgren

Suunnittelumalleja, MVC. Juha Järvensivu 2008

JulkICT portaalin käyttöohje

Tekstinkäsittelyn jatko KSAO Liiketalous 1

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE

GeoGebra-harjoituksia malu-opettajille

Windows 8 -kurssi. Kurssista

Mainosankkuri.fi-palvelun käyttöohjeita

Ohjeistus pöytäkirjan käyttöön. Suomen Lentopalloliitto ry

Ohjelmistoarkkitehtuurit. Kevät

Tukipyyntö-toiminnon ohje

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät

Tapahtumapohjainen ohjelmointi. Juha Järvensivu 2008

Kypsyysnäytteen laatiminen ja arvioiminen Examissa

OHJ-7400 Graafisen käyttöliittymän ohjelmointi, Harjoitustyö

TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link

Uutiskirjesovelluksen käyttöohje

VIRTUAALITOIMISTO. Käyttäjän opas

Osio 4: Graafinen käyttöliittymä

SEPA päiväkirja. Aihe: Suunnittelumallit Tekijät: Tuukka Laakso ja Antti Kettunen

Käyttöliittymän muutokset ProCountorin versiossa 3.0

Ohjelmistoarkkitehtuurit Kevät 2014 Arkkitehtuurityylit vol 2

Pikakäyttöohje Päivitys I OHJELMAN KÄYNNISTÄMINEN SISÄLLYS

Poista tietokoneessa olevat Java ja asenna uusin Java-ohjelma

TIE Ohjelmistojen suunnittelu

OHJ-7400 Graafisen käyttöliittymän ohjelmointi 4/6op

Hyvä asiakas! Toivotamme paljon iloa sekä helpotusta työhösi Mitsumi Scroll Mousen kanssa! Mitsumi Europe

Toiminnot eli käyttäytyminen. Tieto eli rakenteelliset ominaisuudet

WR-R10- langattoman kauko-ohjaimen laiteohjelman päivittäminen

Transkriptio:

Graafinen käyttöliittymä, osa 1 Idea, MVC-malli ja ensimmäinen ohjelma

Graafinen käyttöliittymä Ensimmäisen kerran tavoitteena on oppia graafisen ohjelman perusidea sekä oppia laatimaan esimerkin mukaan pieni graafinen sovellus.

Graafinen käyttöliittymä Rakennetaan käyttöliittymäkomponenttien avulla painikkeet tekstikentät luetteloruudut säiliöt Graafinen ohjelma on tapahtumaohjattu. Tapahtumia ovat esimerkiksi: käyttöliittymän painikkeiden napsautukset hiiren painikkeiden napsautukset hiiren liikkeet Tapahtumaohjattu ohjelma on kuuntelutilassa Tapahtumankäsittelysäie vastaa tapahtumiin reagoimisesta. Tapahtuman syntyessä suoritus siirtyy tapahtumankuuntelijaluokassa olevaan tapahtumankäsittelymetodiin.

Swing Pakkaus javax.swing tarjoaa käyttöliittymäkirjaston. Kokoelma valmiiksi toteutettuja komponentteja. Perustuu vanhaan AWT-käyttöliittymäkirjastoon. Kirjaston käyttö edellyttää ainakin aluksi jatkuvaa APIdokumentaation käyttöä.

MVC-malli Käyttöliittymä ja sovelluslogiikka kannattaa erottaa toisistaan. Tekee ohjelmasta modulaarisemman. Esimerkiksi käyttöliittymä voidaan vaihtaa toiseksi ilman, että sovelluslogiikkaan tarvitsee koskea. MVC (model-view-controller) on suunnittelumalli, joka tukee edellä mainittua tavoitetta.

MVC-malli M Malli Tilatiedot V Näkymä Päivitys C Ohjain Päivitys Tapahtumat Malli toteuttaa sovelluslogiikan. Näkymä toteuttaa käyttöliittymän. Ohjain ohjaa ja päivittää mallia ja käyttöliittymää Vastaa käyttöliittymätapahtumien jatkokäsittelystä.

MVC ja Java Jokainen luokka kuuluu johonkin kolmesta MVC-mallin osasta. Yksinkertaisimmillaan MVC-mallin mukainen ohjelma koostuu kolmesta luokasta: Luokka sovelluslogiikalle (mallitaso) Luokka graafiselle käyttöliittymälle (näkymätaso) Luokka ohjaimelle (ohjaintaso)

Malli

Näkymä

Ohjain

Ensimmäinen ohjelma Toteutetaan konenoppa MVC-mallin mukaisena graafisena sovelluksena: 1. Malli. 2. Graafinen käyttöliittymä. 3. Ohjain. 4. Tapahtumakäsittely

Luokka Noppa (malli)

Luokka NopanGUI (näkymä)

Luokka NopanOhjain (ohjain)

Suorituksen kulku main()-metodissa luodaan ilmentymä mallista, käyttöliittymästä ja ohjaimesta. Tieto ohjaimesta välitetään mallille (metodi rekisteröiohjain()). Käyttöliittymän rakennus tapahtuu metodissa alustakomponentit(). Rakennus päättyy kutsuun setvisible(true), jolloin käyttöliittymä piirtyy. Tämän jälkeen ei saa seurata muita rakennuskomentoja. Painikkeeseen heittopainike liitettiin anonyyminä sisäluokkana toteutettu tapahtumankuuntelija. Kun painiketta napsautetaan, suoritetaan siinä oleva metodi actionperformed(). Metodi antaa kontrollin ohjaimelle, joka pyytää mallilta silmäluvun ja välittää sen käyttöliittymälle. Painikkeen tapahtumankuuntelija toteuttaa rajapinnan ActionListener, joka määrää kirjoittamaan toteutuksen metodille actionperformed().

Käyttöliittymäluokista Käyttöliittymän pääikkuna periytetään yleensä JFrameluokasta. kutsu setdefaultcloseoperation(exit_on_close); määrää, että suoritus päättyy, kun ikkuna suljetaan. Ikkunan sisältö kootaan JPanel-säiliökomponenttiin. add()-metodi lisää säiliöön komponentin. JFrame-luokan metodikutsu setcontentpane(sisältöpaneeli); vaihtaa ikkunan sisällöksi valmiiksi täytetyn säiliön nimeltä sisältöpaneeli.

Esimerkin ohjelmakoodit Esimerkin ohjelmakoodit ovat Tuubi-työtilan välilehdellä Työtiedostot: Noppa.java NopanOhjain.java NopanGUI.java