Pääteohjaustehtäviä 8 / 28.10-1.11


HUOM! Jos jossakin ohjelmassa on pelkästään #include <windowsx.h> , niin tämän edelle pitää lisätä #include <windows.h> . Borland C++ Builder issä projektiin ei näköjään kannata laittaa .def-tiedostoja.

Huom! Hakemistojen eteen aina http://www.mit.jyu.fi/~vesal/kurssit/kurssit/winohj/ tai n:\kurssit\winohj. Jos koodissa puhutaan hakemistosta ALI, niin korvaa tämä n:\kurssit\winohj\ali. Ongelmatapauksissa katso apua vaikka:

http://www.mit.jyu.fi/~vesal/kurssit/winohj/ongelmat.txt

1. Hello World!

Seuraavat esim. C++ Builderillä, ks. käyttöohje demotehtävistä 7. Nyt Linux väen pitää soveltaa. Esim. kirjoittaa vastaava X-ohjelma tai QT-ohjelma.

1.
Tutki whello\mhello.c - ohjelman avulla miten kirjoittamisen koordinaatit määräytyvät, eli onko TextOut-funktioon annettu koordinaatti vasen yläkulma vaiko vasen alakulma tekstille.
Tekstin alku on:
2.
Lisää ohjelmaan myös muita tulostuksia eri paikkoihin ruutua.
3.
Muuta ikkunan luomista siten, että luomisessa onkin oletuskoordinaattien ( CW_USEDEFAULT) sijasta ensin vakiopaikka ja sitten vielä toisella kerralla vakiokoko. Kokeile voiko vain toisen kokoon ja/tai paikkaan vaikuttavan koordinaatin antaa lukuna ja toisen oletuksena.
Voiko?

2. Kolmio ( whello\simplet\kolmio.c)

4.
Kolmio-ohjelman tehtävät 3-5. ( MopoCad on piirto-ohjelma, jossa jälkeen jää tavallaan hiiren kulkema reitti. Tehtävässä 5 ei tarvita käytännön toteutusta, se tulee demoissa)

3. Kolmio/MFC ( oop\apf\mfc\kolmio.cpp)

5.
Muuta tähänkin viivanpiirto " MopoCad"-tyyliseksi.

Vihje: MFC-ohjelman saat käännettyä Borland C++ Builder illä seuraavasti:

  1. File/New/MFC Wizard
  2. anna projektille nimi ja vaihda pallukka Project-kohdalle
  3. talleta "oikeaan" paikkaan
  4. Project/Add to project ja tarvittavat tiedostot (esim. kolmio.cpp)
  5. DECLARE_MESSAGE_MAP() jälkeen ei saa olla puolipistettä!

(Saat kokeilla myös Visual C++:aa jos haluat :-)

4. APF ( oop\apf\mfc\show_man.cpp)

6.
Laita MFC - version ukko näyttämään kursoria sekä kädellä että jalalla.

5. Resurssit ( whello\thello2.c ja oop\apf\mfc\thello.cpp)

7.
Lisää THELLO.CPP:hen TTHELLO2.C:n mallin mukaan monirivinen Edit-ikkuna ja kokeile sen eri ominaisuuksia.

6. Funktion kuvaaja ( vclclx\comps\piirto\sinform.pas)

Jos jää aikaa niin tee

8.
Lisää ohjelmaan neliöjuuren ja logaritmifunktion piirto.
9.
Piirrä vielä polynomi P(x) = 1/2x 3 - x 2 + x -3