<map version="0.7.1">
<node TEXT="GKO, luennot 15.-17.4.2004">
<node TEXT="Omat komponentit" POSITION="right">
<node LINK="http://www.mit.jyu.fi/vesal/kurssit/winohj/html/delphi/omakom.htm" TEXT="Materiaali: Delphi-monisteen lis&#xe4;ys"/>
<node TEXT="Ks. my&#xf6;s Delphilinkit"/>
<node TEXT="Delphin avustuksessa ks. Component writer&apos;s guide"/>
<node TEXT="Delphi-Komponentti:" FOLDED="true">
<node TEXT="luokka, joka on peritty TComponent-luokasta"/>
<node TEXT="Osittain automatisoitu muistinhallinta: Komponentti vastaa omistamistaan komponenteista (jokaisella komponentilla on owner-property, joka m&#xe4;&#xe4;ritt&#xe4;&#xe4; komponentin omistajan)"/>
<node TEXT="Ominaisuudet (propertyt): &apos;julkaistuja&apos; attribuutteja, joita k&#xe4;sitell&#xe4;&#xe4;n omilla get/set-metodeilla ja joita voi s&#xe4;&#xe4;t&#xe4;&#xe4; suoraan suunnitteluvaiheessa"/>
<node TEXT="Tapahtumat (events): metodiosoittimia, joita kutsutaan k&#xe4;ytt&#xe4;j&#xe4;n toimintojen (tai itse m&#xe4;&#xe4;riteltyjen tapahtumakutsujen) j&#xe4;lkeen. voidaan s&#xe4;&#xe4;t&#xe4;&#xe4; suoraan suunnitteluvaiheessa"/>
<node TEXT="TPersistent-oliota kehittyneempi serialisointi (propertyt)"/>
<node TEXT="Integrointi Delphin k&#xe4;ytt&#xf6;liittym&#xe4;&#xe4;n: komponenttipaletti ja object inspector"/>
<node TEXT="Delphi-komponentit ovat Windowsissa samalla my&#xf6;s COM-komponentteja (=muunnettavissa ActiveX-kontrolleiksi, joita voi k&#xe4;ytt&#xe4;&#xe4; esim. Visual Basicissa ja Web-sivuilla IE:ll&#xe4;)"/>
<node TEXT="Komponentit varastoidaan BPL-kirjastoissa, jotka ovat Borlandin muokkaamia DLL:ia" FOLDED="true">
<node TEXT="Eri sovellukset voivat jakaa samat BPL:t (itse asiassa koko Delphin ajonaikainen kirjasto on joukko DPL-tiedostoja)"/>
<node TEXT="Voidaan k&#xe4;ytt&#xe4;&#xe4; my&#xf6;s C++ Builderista"/>
</node>
</node>
</node>
<node TEXT="Komponentit ja tapahtumat" POSITION="right">
<node LINK="http://www.mit.jyu.fi/vesal/kurssit/winohj/html/delphi/omakom02.htm" TEXT="Materiaali: Tapahtumapohjainen ohjelmointi"/>
<node TEXT="Jatketaan Laskurikomponenttia Delphi-monisteen mukaan..."/>
<node TEXT="OnChange-tapahtuma"/>
<node TEXT="Autolaskuri Laskurikomponentilla + laskurien summa"/>
<node TEXT="Lask-paketin LisaaButton: esimerkki komponenttien muistinhallinnasta"/>
<node TEXT="Esimerkkikomponentteja Comps-hakemistossa:" FOLDED="true">
<node TEXT=" TColorChange (vrt. 16.4. demot. v&#xe4;rin vaihto helposti) "/>
<node TEXT=" DynKent&#xe4;t (ks. Puhlusovellus, vrt. koodia komponentilla ja ilman)"/>
</node>
</node>
<node TEXT="Autolaskuri-esimerkki uusilla komponenteilla" POSITION="left">
<node TEXT="&apos;kaasutus&apos; sliderilla">
<node TEXT="huom. nopeus &apos;attribuutti&apos; get/set-metodeilla"/>
</node>
<node TEXT="lomakkeen monistaminen">
<node TEXT="alkuper&#xe4;inen lomake vastaa monistetun lomakkeen tuhoamisesta (&apos;omistaa&apos; monistetun lomakkeen)"/>
<node TEXT="Huom. muistinhallinta"/>
</node>
<node TEXT="labelien dynaaminen luonti ja &apos;vanhentaminen&apos;"/>
</node>
<node TEXT="Yhteenveto: Delphi-luokkahierarkiaa..." POSITION="left"/>
<node TEXT="Esimerkki: Laskurikomponentti" POSITION="left"/>
</node>
</map>
