GKO 2007

Pääteohjaustehtäviä 8 / 29.-30.10

1. TCP/IP

1. Kokeile muutaman kaverin kanssa (siis toisen koneen välillä) VespaCadin ( avaa vesal , avaa g) TCP/IP-versiota (voit myös kopioida valmiin exen vespacad.exe). Komponentit menevät hakemistoon ..\..\comps, joten se Unittien hakupolkuun. Yksi ilmoittautuu serveriksi ja muut kuuntelemaan (pitää katsoa host-kohtaan serverin nimi, tai mahdollisesti jopa IP-osoite, näkee esim. hostname tai ipconfig komentorivillä). Kaikki voivat sitten piirtää samaan kuvaan. Voitte kokeilla myös käynnistää kuuntelijaksi hakemistosta vclclx\comps\tcpip ohjelman tcpiptestVCL.exe. Tällöin näkee liikenteen tekstimuodossa. Toisaalta antamalla protokollan mukaisia komentoja, voi myös tekstiohjelmasta ohjata piirtoa. Tekstiohjelmalla voi myös keskustella keskenään. Samaan koneeseen voi käynnistää molempia ohjelmia useita versioita, kunhan vain yksi toimii palvelimena/portti.
2. Katso tiedostosta vclclx\comps\tcpip\tcpiptest.pas kuinka voit toimia WWW-palvelimena ja asiakkaana jo kokeile kumpaakin.
3. Katso RFC921 http://www.faqs.org/rfcs/rfc821.html esimerkki Appendix F ja lähetä itsellesi sähköpostia koneen smtp.jyu.fi kautta. Muista \r\n aina rivien loppuun.

2. TActionList

4.
Erään luennon lopuksi esiteltiin TActionList - komponenttia. Tee komponenttia käyttäen ohjelma, jossa sekä menusta kahdesta eri kohtaa, formilla olevasta nappulasta että Ctrl+K:sta tulee sama tapahtuma:
    ShowMessage('Tapahtuma tuli!');
     1. Lisää ensin TActionList - komponentti.
     2. Tuplaklikkaa komponenttia ja Actions ikkunassa valitse hiiren
        oikealla
           New Action.
     3. Täytä property uudesta actionista ja anna sille hyvä nimi
     4. Laita haluttu pikanäppäin.
     5. Lisää menut ja ja laita menun Actioniksi tuo em. action.
     6. Lisää vielä nappula jolle tulee sama Action.
5.
Lisää edelliseen ohjelmaan CheckBox, jonka ollessa ruksittuna nappula ja menut ovat aktiivisia, mutta kun ruksi poistetaan niin sekä menut että nappula menevät Enabled:=false - tilaan.

3. Lomakkeen luominen funktiossa

6.
Katso demotehtävää 9.3 ja 9.4. Tee FormKysyInt:ia varten tarvittava testiohjelma valmiiksi.
    1. Luo päälomakkeen lisäksi uusi lomake FormKysyInt
    2. FormKysyInt:iin nappula OK, jolle ominaisuus ModalResult := mrOK
       ja Cancel, jolla Cancel := true ja ModalResult := mrCancel.
    3. Poista FormKysyInt projektista.
    4. Poista globaali muuttuja FormKysyInt.
    5. Päälomakkeelle hiiren oikeasta napista mm:
         i := KysyInt('Anna kokonaisluku',0); // Kysymys ja oletusarvo
    6. Funktio KysyInt siihen Unitiin, mihin FormKysyInt-kirjoitetaan.
    7. Funktion KysyInt koodiin FormKysyInt-dialogin luominen ja
       ShowModal.

 


 

4. Ini-tiedostot

7. Kopioi hakemiston N:\kurssit\winohj\kaytto sisältö omaan hakemistoosi ja tutki ohjelmaa varit. Lue "käyttöohje" tiedostosta VariForm.pas. Miten ja miksi numeronäppäimen painallus hakee jonkin värikombinaation? Unitit IniFiles, IniName, kdouble löytyvät hakemistosta N:\Kave\k2000\kcomp\KaveOpt.