Oppimistavoite: GUIn ja businesslogiikan sisältävän luokan kytkeminen
Tee Windows-sovellus, jolla loppukäyttäjä voi tehdä seuraavat
peruslaskutoimitukset:
Summa, Erotus, Tulo, Osamäärä ja Potenssiin korotus.
Sovelluksessa on kaksi tekstikenttä johon arvot voidaan syöttää, yksi
valintalista josta laskutoimitus valitaan ja yksi selite, jossa laskutoimituksen
tulos esitetään.
Toteuta tämän matikkaneron toiminnallisuus luokalla MatikkaNero, joka on oheisen
speksin mukainen.
Muista että nollalla ei saa jakaa!
Oppimistavoite: business-luokan luonti ja käyttö Windows-sovelluksessa
Luo Lotto-niminen luokka allaolevan kuvan määrittelyn mukaisesti. Tyyppi voi olla Suomi tai VikingLotto. "Suomi" on alkuperäinen lotto, jossa arvotaan 7 numero 39:sta, Viking Lotossa arvotaan 6 numero 48:sta.
Testaa huolellisesti toteuttamasi luokka, että se varmasti toimii oikein. Käännä sen jälkeen luokkasi DLL:ksi jota käytät. Tee kaksi käyttöliittymää, joilla voi käyttää Lotto-luokka. Tee sovelluksiin viittaus (reference) luomaasi DLL:ään:
Oppimistavoite: luokkien luonti ja käyttö, hankkia rutiinia C# olio-ohjelmoinnista, ArrayList
Tehtävä: Tee toiminnallisuus oheisen kuvan mukaiselle ohjelmalle.
Tee ensimmäiseksi luokka Pelaaja, jolla on ominaisuudet Etunimi, Sukunimi, Koko
nimi (sukunimi + etunimi siis esim: "Helminen Raimo"), Seura, Siirtohinta. Tee
luokalle tarvittavat metodit.
Ohjelmalla on seuraavat toiminnot:
- käynnistyksen yhteydessä Seura -combobox täytetään 14 SM-Liigan seuralla
- Tee pelaaja: tarkistetaan että kaikissa kentissä on arvo ja tarkistetaan ettei
saman nimistä pelaaja ole jo Pelaajat -listalla ja luodaan olio luokasta Pelaaja
ja kirjoitetaan Pelaajat -listalle pelaajan kokonimi (sukunimi + etunimi) ja
seura
- jos pelaajan nimeä napsautetaan listboxissa niin pelaajan kaikki tiedot
kirjoitetaan tekstikenttiin tietojen muokkausta varten
- Talleta pelaaja: ei luoda uutta oliota vaan muutetaan olemassa olevan olion
tietoja ja kirjoitetaan tiedot listboxiin
- Poista pelaaja: poistetaan listasta valittu pelaaja
- Kirjoita tiedostoon: kirjoitetaan listassa olevien kaikkien olioitten tiedot
käyttäjän Save-dialogissa valitsemaan tiedostoon
- Lopeta: lopettaa ohjelman
- dialogin alareunassa on tilarivi (statuBar) jossa näytetään aina tapahtuneet
toiminnot
Extratehtävä: Mihin tallennat pelaajien tiedot siksi ajaksi kun ohjelma ei ole käynnissä? Tee tätä varten tarvittava toiminnallisuus.
Luo sovellus joka kirjoittaa Windowsin tapahtumalokiin käyttäjän antamia lokitietoja: Entrytext ja EntryID. Sovelluksen käynnistyessä kirjoitetaan automaattisesti: ID=100 ja teksti "Sovellus käynnistetty siis esim 7.3.2008 8:00". Sovellusta suljettaessa kirjoitetaan: ID=101 "Sovellus suljettu 7.3.2007 8:25".; missä päivämäärä ja kellonaika reaaliaikaisesti.
Sovellus myös muistaa ikkunan paikan ja koon, eli jos käyttäjä siirtää ikkunan toiseen paikkaan tai muuttaa sen kokoa ja sulkee sovelluksen, niin seuraavalla kerralla käynnistettäessä sovellus "muistaa" paikan&koon.
Viikon 7 tehtävänä on toteuttaa loppuun tunnilla aloitettu Koronlaskenta-sovellus, katso harjoitukset.
Tulossa
Oppimistavoite: oppia käyttämään DataAdapter ja DataSet&DataTable -olioita
Tehtävänä on laatia oheisen kuvan mukainen Windows-sovellus tiedon hakuun
Wines-tietokannasta, hae DataGridView:hen tiedot
Wine-taulusta.
Luo toiminnallisuus Get Data ja Save Data -komentopainikkeille, eli käyttäjän on
voitava lisätä, poistaa ja muokata viinejä.
Oppimistavoite: opetella ja/tai kerrata kuinka tietoja voidaan kirjoittaa sovelluksesta eri tallennuspaikkoihin, enum
Tee aiemmin tehtyyn Windows-sovellukseen OudotOliot SMLiigassa toiminnallisuus jolla käyttäjä voi tallentaa luomiensa olioitten tiedot. Seuraavat tiedot tallennetaan: sukunimi, etunimi, seura, siirtohinta.
Käyttäjä voi valita mihin tiedot tallennetaan:
- näytölle (ei siis varsinaisesti tallenna mihinkään sic)
- tekstitiedostoon
tiedot erotetaan toisistaan puolipisteelllä)
- XML-tiedostoon (käytä DataSettiä!)
- tietokantaan (tallenna paikalliseen Access-tietokantaan, tallenna
ConnectionString App.Config-tiedostoon)
Tee tallennusta varten oheisten kuvien mukainen lomake frmTallennus sekä luokka Tallennus. Se sisältää tarvittavan toiminnallisen logiikan sekä oheisen esimerkin mukaisen arvotaulukon eli enum -määrittelyn. Käytä samaa arvotaulukkoa myös lomakkeella.
![]() |
![]() |
public enum Tallennuspaikka {Määrittelemätön, Näyttö, Serialisoi, Tekstitiedosto, XMLtiedosto, Tietokanta} |
Olisihan se nyt kiva kun tiedot on jossain tallessa,
niin myös lukea ne takaisin sovellukseen, joten tee toiminnallisuus jolla
1) ohjelmaa käynnistäessä ohjelma automaattisesti lukee tiedot käyttäjän
viimeksi käyttämästä tallennuspaikasta
2)
käyttäjä voi valita tietolähteen (kuten ylläolevassa kuvassa, paitsi ei
tietänkään näytöltä)
tulossa...
Oppimistavoite: opetella ja/tai kerrata kuinka eri tietovarastoissa olevia tietoja voidaan esittää (ml suodatus, ryhmittely) webbi-sivulla. Käytä tietokannan SMLiiga08.mdb taulua Pelaajat.
Tehtävä: Tee websivu, jossa käyttäjä voi:
1) listata kaikki pelaajat aakkosjärjestyksessä
2) listata kaikki valitun joukkueen pelaajat aakkosjärjestyksessä tai tehopisteitten mukaan järjestettynä
3) listata kaikki tietyn pelipaikan pelaajat aakkosjärjestyksessä tai tehopisteitten mukaan järjestettynä
Oppimistavoite: opetella toteuttamaan webbi-sovellus, jossa on kaikille käyttäjille avoimia sivuja ja vain autentikoituneille käyttäjille tarkoitettuja sivuja.
Tehtävä: tulossa