I. KÖTET | |
I. RÉSZ | 1 |
A Form egy ablak (és egy ActiveX) | 5 |
Első formunk elkészítése | 5 |
Cím beállítása | 6 |
A form elmentése | 8 |
Komponensek használata | 8 |
Tulajdonságok megváltoztatása | 9 |
Reagálás az eseményekre | 12 |
A program fordítása és futtatása | 16 |
Tulajdonságok futásidejű megváltoztatása | 18 |
Kód hozzáadása a programhoz | 20 |
Egy kétirányú eszköz | 22 |
A forráskód | 22 |
A form szöveges leírása | 24 |
A projekt-állomány | 27 |
ActiveForm készítése | 28 |
Komponens-sablonok használata | 29 |
ActiveX könyvtár és ActiveForm | 29 |
A HTML oldal | 31 |
Hogyan tovább? | 33 |
A Delphi-környezet jellemzői | 37 |
A Delphi különböző verziói | 37 |
Segítség kérése | 38 |
Delphi menük és parancsok | 40 |
A File menü | 40 |
Az Edit menü | 42 |
Komponensek másolása és beillesztése | 42 |
További szerkesztő parancsok | 45 |
A Search menü | 45 |
A View menü | 48 |
A Project menü | 49 |
A Run menü | 50 |
A Component menü | 51 |
Komponens sablonok | 51 |
A Database menü | 51 |
A Tools menü | 52 |
A Help menü | 53 |
A Delphi eszköztára | 53 |
A lokális menük | 54 |
A Form Designer használata | 54 |
A komponenspaletta | 57 |
Az Object Inspector | 58 |
Az Alignment paletta | 59 |
Programkód írása a szerkesztőben | 60 |
A szerkesztő könyvjelzőinek használata | 60 |
A Delphi 3 Code Insight szolgáltatásai | 62 |
Kódkiegészítés | 62 |
Kódsablonok | 63 |
Kódparaméter | 64 |
Projektek menedzselése | 65 |
A Project Manager | 65 |
Projektopciók beállítása | 66 |
Egy projekt lefordítása | 67 |
Egy lefordított program vizsgálata | 68 |
A beépített hibakereső | 68 |
Az Object Browser | 69 |
Egyéb Delphi eszközök | 69 |
A rendszer fájljai | 70 |
Az Object Repository és a Delphi varázslók | 79 |
Az Object Repository | 79 |
A New oldal | 81 |
Az ActiveX oldal | 82 |
Az "aktuális projekt" oldal | 83 |
A Forms oldal | 83 |
A Dialogs oldal | 84 |
A Data Modules oldal | 85 |
A Projects oldal | 85 |
Delphi varázslók | 86 |
Az Adatbázis Form varázsló (Database Form Wizard) | 87 |
Az Alkalmazás varázsló (Application Wizard) | 89 |
A Párbeszédablak varázsló (Dialog Wizard) | 91 |
Az Object Repository testreszabása | 92 |
Új alkalmazás sablon felvétele | 92 |
Az üres projekt sablon | 94 |
Új form sablonok hozzáadása | 94 |
Az Object Repository opciói | 95 |
Új varázsló DLL-ek telepítése | 96 |
A Pascal nyelv | 101 |
Típusok, változók és konstansok | 101 |
Változók | 101 |
Konstansok | 103 |
String erőforrás (resource string) konstansok | 104 |
Delphi adattípusok | 104 |
Sorszámozott típusok (ordinal types) | 105 |
A Range példaprogram | 106 |
Sorszámozott típusokon használható eljárások és rutinok | 108 |
Valós típusok | 109 |
Dátum és idő | 110 |
Különleges Windows-típusok | 114 |
Ablakkezelők (handle) | 115 |
Típusmegfeleltetés (casting) és típuskonverzió | 116 |
A Variant típus | 118 |
Felhasználó által meghatározott adattípusok | 122 |
A részintervallum típusok (subrange types) | 124 |
Felsorolt típusok | 125 |
Halmaz típusok | 127 |
Tömb típusok (array types) | 129 |
A rekord adattípus | 131 |
A mutató típus (pointer) | 133 |
Állománytípusok | 135 |
Stringek a Delphiben | 136 |
A hagyományos Pascal stringek | 136 |
A Delphi hosszú stringjei | 136 |
StrRef: Példa a dinamikus string allokálására | 138 |
C-stílusú karaktertömbök | 140 |
String átalakítások | 141 |
Stringátalakítási nehézségek | 142 |
Stringek formázása | 144 |
Programozási stílus | 146 |
Megjegyzések | 147 |
A NAGY- és kisbetűk használata | 148 |
Közök (white space) | 148 |
A szép külalak | 149 |
A szintaktikai elemek kiemelése | 150 |
Kódsablonok használata | 151 |
Nyelvi kifejezések | 152 |
Kifejezések és operátorok | 152 |
Operátorok és a precedencia szabály | 153 |
Egyszerű és összetett kifejezések | 154 |
Elágazások | 156 |
Az if utasítás | 156 |
A Case utasítás | 158 |
Ciklusok a Pascalban | 158 |
A for ciklus | 158 |
A while és a repeat utasítások | 159 |
A with utasítás | 162 |
Eljárások és függvények | 165 |
Cím szerinti paraméterátadás | 166 |
Konstans paraméterek | 167 |
Nyitott tömb paraméterek | 167 |
Változtatható típusú nyitott tömb paraméterek | 168 |
A Delphi alprogram-hívási lehetőségei | 171 |
Mi is az a metódus? | 172 |
Elődeklarációk | 172 |
Külső deklarációk | 174 |
Eljárás-típusok | 175 |
Windows callback függvények | 178 |
Az Object Pascal, mint objektumorientált nyelv | 183 |
Osztályok és objektumok | 183 |
A Delphi objektum-hivatkozási modellje | 186 |
A TDate osztály felhasználása Delphiben | 188 |
Konstruktor készítése | 190 |
Objektumok a memóriában | 192 |
Az osztályok és az információ-rejtés | 194 |
Private, protected, public | 195 |
Public és published | 196 |
Osztályok és egységek | 197 |
Osztály interfész | 201 |
Egységek és érvényesség | 202 |
Egységek és érvényességi körök | 203 |
Változások elrejtése | 204 |
Egység a TDate osztály számára | 206 |
Egységek és programok | 210 |
Öröklés meglévő típusokból | 211 |
Öröklés és típus kompatibilitás | 215 |
Késői kötés és polimorfizmus | 218 |
Metódusok felülírása és újradefiniálása | 221 |
Virtuális és dinamikus metódusok | 222 |
Üzenetkezelők | 223 |
Absztrakt metódusok | 224 |
Futási idejű típus információ | 228 |
Kivételkezelés | 230 |
Az at kulcsszó | 232 |
Példa kivételek használatára | 232 |
Kivételek és a verem | 236 |
A finally blokk | 237 |
Haladó szintű Object Pascal | 245 |
A Self kulcsszó | 245 |
Komponensek dinamikus létrehozása | 246 |
Osztálymetódusok és adatok | 248 |
Egy osztály objektum-számlálóval | 249 |
Metódus-mutatók | 253 |
A számlálós példa fejlesztése | 255 |
Objektumok egyszeri megsemmisítése | 257 |
Osztályreferenciák | 259 |
Objektumok létrehozása futási idő alatt osztályhivatkozások használatával | 261 |
Interfész és többszörös öröklődés | 263 |
Interfész deklarálása | 264 |
Interfész használata paraméterként | 267 |
Egy második interfész írása | 268 |
Mindkét interfész implementációja | 270 |
Tulajdonságok és események definiálása | 273 |
Tulajdonságok hozzáadása a TDate osztályhoz | 276 |
Események a Delphiben | 281 |
Az események tulajdonságok | 281 |
Egy esemény hozzáadása a TDate osztályhoz | 282 |
Egy TDate komponens készítése | 284 |
A Vizuális Komponenskönyvtár (Visual Component Library) | 289 |
A TObject osztály | 289 |
Az osztályinformáció megjelenítése | 292 |
A VCL hierarchiája | 293 |
A komponensek | 295 |
Az objektumok | 296 |
A kivételek | 300 |
A VCL osztályok használata | 302 |
Az általános VCL tulajdonságok | 302 |
A Name (Név) tulajdonság | 305 |
Komponensek méretére és helyzetére vonatkozó tulajdonságok | 308 |
Aktivizálási és láthatósági tulajdonságok | 308 |
A testreszabható Tag tulajdonság | 309 |
A felhasználói interfész: színek és fontok | 310 |
Általános VCL metódusok | 312 |
Az általános VCL események | 315 |
A Delphi kollekcióinak használata | 316 |
Objektum- és adatlisták használata | 318 |
A VCL forráskód tanulmányozása | 320 |
II. RÉSZ | 323 |
Alapvető komponensek | 327 |
A Windows saját komponensei | 327 |
Gombra kattintás | 328 |
A Buttons (gombok) példa | 329 |
Kattintás az egérrel | 333 |
Színes szövegek a formon | 334 |
A LabelCo példa | 334 |
A standard szín párbeszédablak | 337 |
Elemek áthúzása komponensek között | 338 |
A Dragging példa kódja | 340 |
Felhasználói input fogadása | 341 |
A bemeneti fókusz kezelése | 342 |
Egy általános OnEnter eseménykezelő | 346 |
Számok bevitele | 347 |
Kifinomult beviteli sémák | 352 |
Egy egyszerű szerkesztő készítése | 354 |
A Font párbeszédablak | 354 |
Egy komolyabb szerkesztő készítése | 355 |
Választások | 357 |
A rádiógombok csoportosítása | 358 |
A Phrases1 példa | 359 |
Egy lista sok választási lehetőséggel | 363 |
A Phrases2 példa formja | 363 |
Listapanelek kezelése | 365 |
A kiválasztott string eltávolítása a másik listapanelből | 366 |
Többszörös kiválasztás engedélyezése | 370 |
A Phrases példa harmadik változata | 372 |
A jelölőnégyzet-lista (CheckListBox) komponens használata | 375 |
Sok lista, kevés hely | 377 |
Egy adott határon belüli érték kiválasztása | 379 |
A Scroll Color példa | 379 |
Menük készítése és kezelése | 385 |
A főmenü felépítése | 385 |
A menüpontok különböző szerepei | 386 |
Menü készítése a Menü Tervezővel | 387 |
A menü általános felépítése | 388 |
Gyorsbillentyűk, forróbillentyűk | 388 |
Előre definiált menüsablonok használata | 389 |
Menüparancsok feldolgozása | 390 |
A Menü Tervező által generált kód | 391 |
A MenuOne példa forrása | 393 |
Menük módosítása futásidőben | 395 |
Menüpontok változtatása futásidőben | 395 |
Menüpontok kikapcsolása és legördülő menük elrejtése | 397 |
Rádió menüpontok használata | 399 |
Menüpontok készítése dinamikusan | 400 |
Rövid és hosszú menük | 405 |
Grafikus menüpontok | 407 |
A pipa módosítása | 407 |
Kép menüpontok | 411 |
Tulajdonos által rajzolt menüpontok | 415 |
A rendszermenü testreszabása | 419 |
Teljes menü készítése | 422 |
A Fájl menü | 423 |
Rövid kiértékelés | 425 |
A Bekezdés menü | 429 |
A Betűtípus menü | 430 |
A Beállítások menü | 433 |
Előugró menük | 434 |
Automatikus helyi menü | 435 |
Előugró menü módosítása aktiváláskor | 436 |
Előugró menük kezelése programból | 437 |
A formok mélyebb megismerése | 443 |
Formok és ablakok | 443 |
Átlapolt, felbukkanó és gyermekablakok | 445 |
Az alkalmazás is ablak | 446 |
Form-stílusok beállítása | 447 |
Legfelül maradó form készítése | 448 |
A villanás kiküszöbölése | 449 |
Keretstílus | 451 |
A keretstílus hatása | 452 |
A Borders példa | 453 |
A keret ikonjai | 454 |
További ablakstílusok használata | 456 |
A formok manuális méretezése | 457 |
Formok automatikus méretezése | 460 |
A form helyzetének és méretének állítása | 461 |
A form kis- és teljes méretűvé alakítása | 463 |
A form és kliensterületének mérete | 465 |
A formok maximális és minimális mérete | 466 |
Formok készítése automatikusan | 468 |
A form bezárása | 469 |
A billentyűzet-események figyelése | 472 |
Egéresemények figyelése | 475 |
Az egér gombjai | 475 |
A Windows használata egér nélkül | 476 |
Az egéresemények paraméterei | 476 |
Kattintás és rajzolás: a Shapes1 példa | 477 |
Rajzolás a formra | 479 |
A rajzeszközök | 480 |
Alakzatok rajzolása | 481 |
Rajzolás és festés a Windows-ban | 484 |
Egy egyszerű alakzat festése | 485 |
Több alakzat festése | 487 |
A Delphi kimeneti komponensei | 491 |
Grafikus komponensek | 495 |
A felhasználói felület grafikus fejlesztése | 495 |
Bitmap a gombon | 496 |
Egy autó a gombon | 497 |
Változó kép a gombon | 502 |
A kétállású gomb | 502 |
Több kép egy bitmapben | 504 |
A forgó földgömb | 506 |
Bitmap lista, erőforrások használata, és a rajztábla | 508 |
Az Animáció kontrol | 514 |
Kép megjelenítő | 517 |
Rajzolás a bittérképbe | 520 |
Alakzatok rajzolása | 521 |
Grafikus listák | 524 |
Színek listájának kirajzolása | 524 |
A könyv rövid áttekintése | 528 |
A fejezetek struktúrája | 532 |
Az Outline csomópontjai | 536 |
Egy grafikus lista | 539 |
Grafikus rácsok | 542 |
A font rács | 544 |
Aknák a rácsban | 548 |
Színek választása | 553 |
A TeeChart használata | 554 |
Az első példa készítése | 556 |
Adatok hozzáadása a grafikonhoz | 558 |
Sorozatok dinamikus létrehozása | 560 |
A Dátum-Idő kiválasztó kontrol | 562 |
Eszköztár, CoolBar, státuszsor | 567 |
Kontrolok csoportosítása paneleken | 567 |
Eszközsor készítése panelből | 568 |
Az első eszköztár | 569 |
Eszköztár gombok ki és bekapcsolása | 572 |
Tippek hozzáadása az eszköztárhoz | 574 |
Tippek a formokon | 576 |
Tippek testre szabása | 576 |
Több tipp egy kontrollhoz | 578 |
Szolgáltatások az eszköztáron | 580 |
Combo box eszköztáron | 580 |
Mozgatható eszköztár | 582 |
A Windows 95-ös Toolbar (Eszköztár) kontrol | 586 |
Egy remek eszköztár | 590 |
Státuszsor készítése | 593 |
Menü tippek a státuszsoron | 594 |
Speed Button tippek a státuszsoron | 596 |
Több form és párbeszédablak | 601 |
Párbeszédablakok vagy formok? | 601 |
Második form hozzáadása a programunkhoz | 602 |
Modális és nem modális formok | 605 |
Két form, két menü | 607 |
Form menük egybeolvasztása | 608 |
Párbeszédablakok készítése | 611 |
Modális párbeszédablakok | 611 |
Párbeszédablak bezárása | 614 |
Nem modális párbeszédablak | 615 |
Előre definiált párbeszédablakok használata | 620 |
Általános Windows párbeszédablakok | 620 |
Üzenetablakok sokasága | 626 |
Bővíthető párbeszédablakok | 630 |
Névjegy készítése | 633 |
A rendszer Névjegyének használata | 633 |
Saját rejtett képernyő készítése | 634 |
Nyitóképernyő készítése | 637 |
Vizuális form öröklés | 642 |
Öröklés alapformból | 643 |
Polimorf formok | 646 |
Görgetés, többlapos formok | 655 |
Amikor a formok túl nagyok | 655 |
A form görgetése | 656 |
A görgetést tesztelő példa | 657 |
Automatikus görgetés | 660 |
Kép görgetése | 660 |
Görgetés és form koordináták | 662 |
Jegyzettömbök készítése a Delphivel | 664 |
PageControl és TabSheet komponensek | 665 |
Notebook TabSet-tel | 670 |
Jegyzettömb oldalának megváltoztatása | 674 |
Füllel rendelkező jegyzettömbök | 677 |
Jegyzettömb fülek nélkül és fülek jegyzettömb nélkül | 678 |
Megjelenítés egy jegyzettömbben | 679 |
Egy képkezelő program | 680 |
Képnézegető fülekkel | 683 |
Egy többoldalas eszköztár | 684 |
Formfelosztási technikák | 686 |
Elválasztás Splitterrel | 686 |
Vízszintes elválasztás | 689 |
Alternatív elválasztó komponensek | 690 |
Elválasztás fejléccel | 691 |
Elválasztás panelekkel | 694 |
Elválasztó vonal rajzolása | 697 |
Közvetlen egérkezelés a formban | 701 |
Húzás egérrel | 701 |
A húzás kódja | 702 |
MDI alkalmazások készítése | 707 |
MDI a Windowsban: technikai áttekintés | 707 |
Keret és gyermekablakok a Delphiben | 710 |
Az első MDI demo Delphiben | 710 |
Egy teljes Window menü felépítése | 713 |
Egy gyermekablak létrehozása | 715 |
MDI alkalmazások különböző gyermekablakokkal | 717 |
Egy pattogó alak hozzáadása | 718 |
Az új gyermekform menüje | 719 |
A főform átalakítása | 720 |
Az MDI gyors elsajátítása | 722 |
Adatbázis-kezelő alkalmazások készítése | 727 |
Adatok, fájlok, adatbázisok és táblák | 727 |
Mi is egy tábla? | 730 |
Műveletek végzése az adatbázison | 731 |
A Delphi adatbázis komponensei | 731 |
Táblák és lekérdezések | 733 |
Az adatkészlet állapota | 735 |
Más adatkezelő komponensek | 736 |
A Delphi adatfüggő komponensei | 736 |
Adatbázis-kezelő alkalmazások készítése manuálisan | 738 |
Egy adatbázis-kezelő rács | 738 |
A rács testreszabása | 740 |
A tábla állapota | 741 |
DBEdit vezérlők használata | 742 |
Lekérdezések használata | 744 |
Paraméterezett lekérdezések | 748 |
A Database Form varázsló használata | 750 |
Az adatmezők elérése | 751 |
A mezőosztályok hierarchiája | 753 |
Számított mező készítése | 757 |
Mezők használata a tábla változtatásához | 762 |
Rekordok keresése a táblában | 762 |
A kereső metódusok | 764 |
Goto metódusok | 765 |
A Locate metódus | 766 |
Egy tábla oszlopának szummázása | 766 |
A tábla egy oszlopának szerkesztése | 769 |
Az adatbázis különböző tábláinak használata | 770 |
Az adatbázis és a tábla kiválasztása futásidőben | 770 |
Egy táblaböngésző program | 772 |
Egy mezőszerkesztő program | 775 |
A táblaböngésző felhasználói felületének továbbfejlesztése | 776 |
Tábla létrehozása | 778 |
Táblák dinamikus létrehozása | 779 |
A form és a kezdő programrészlet | 781 |
Új tábla létrehozása | 782 |
Egy létező tábla kiválasztása a megfelelő mezők segítségével | 784 |
Rekordok hozzáadása és törlése | 787 |
Többrekordú rács használata | 788 |
Rácspanelek mozgatása | 789 |
Kapcsolttáblás form készítése varázslóval | 791 |
A kapcsolttáblás szerkezet használata lekérdezésekben | 793 |
Választás kombinált lista segítségével | 793 |
Keresés a rácsban | 795 |
Haladó adatbázis-kezelés | 801 |
Kapcsolat létesítése SQL szerverrel | 801 |
Első InterBase alkalmazásunk | 802 |
Kapcsolat távoli SQL szerverrel | 804 |
InterBase szerver eszközök | 804 |
Meglévő program átírása SQl szerverre | 907 |
A tábla átmásolása | 808 |
Az alkalmazás átírása | 810 |
A Visual Query Builder használata | 811 |
Átírás vagy fejlesztés? | 814 |
Tábla-összekapcsolások a Visual Query Builderrel | 814 |
Egy háromtáblás összekapcsolás | 815 |
Egy többtáblás kapcsolat | 817 |
Adatmodulok | 819 |
Egy adatmodul elkészítése | 820 |
Adatmodul több nézethez | 821 |
Mezőtulajdonságok és kezdőértékek megadása | 823 |
Egyszerű táblaszűrés | 825 |
Egyéni táblaszűrés | 827 |
Egyéni szűrés és a kliens/szerver fejlesztés | 829 |
Az adatszótár | 830 |
Az adatszótár és a mezőszerkesztő (Fields Editor) | 831 |
Miből áll egy attribútumhalmaz? | 832 |
Az adatszótár használata | 833 |
Tranzakciókezelés | 834 |
Egy egyszerű példa a tranzakciókezelésre | 835 |
Egyéni adatbázis-belépés | 837 |
Adatbázishibák kezelése | 839 |
II. KÖTET | |
KOMPONENSEK ÉS KÖNYVTÁRAK | 1 |
Komponensek létrehozása | 5 |
A VCL kibővítése | 5 |
A komponensektől a csomagokig | 6 |
A komponensírás szabályai | 8 |
Az első komponens elkészítése | 9 |
A Font kombinált lista | 10 |
Csomagok létrehozása | 13 |
A Font kombinált lista használata | 16 |
Tabulált listapanel készítése | 18 |
A készített listapanel komponens kipróbálása | 19 |
Új komponensek készítése | 21 |
Egy grafikus komponens építése lépésről-lépésre | 21 |
Felsorolás típusú tulajdonság definiálása | 22 |
A Paint metódus | 25 |
A tesztprogram | 26 |
Osztály típusú tulajdonságok hozzáadása a komponenshez | 28 |
A tesztprogram átírása | 32 |
Saját esemény definiálása | 33 |
Az OnArrowDblClick esemény kipróbálása | 35 |
Bitkép hozzáadása a komponenspalettához | 37 |
Az Arrow komponens utolsó próbája | 38 |
A hibák kijavítása az Arrow komponensben | 39 |
Nyilak és alakzatok | 40 |
Az óra komponens | 42 |
Tömbtulajdonság definiálása | 44 |
Az új tabulált lista | 44 |
A párbeszédablak mértékegységeinek használata | 48 |
Fejléc és a tabulált listapanel | 49 |
Egy nem vizuális komponens készítése | 51 |
Párbeszédablak a komponensben | 52 |
Nem vizuális komponensek használata | 55 |
A komponensek és a ToolsAPI | 61 |
Tulajdonság-szerkesztők (property editor) készítése | 61 |
A tulajdonság-szerkesztők típusai | 61 |
Szerkesztő a TabString tulajdonsághoz | 63 |
A tulajdonság-szerkesztő telepítése | 65 |
Komponens-szerkesztő készítése | 67 |
A TComponentEditor osztály és leszármazottai | 68 |
Komponens-szerkesztő a listához | 68 |
A komponens-szerkesztő regisztrálása | 71 |
Egyszerű varázslók készítése | 71 |
A TIExpert osztály és leszármazottai | 72 |
Egy egyszerű varázsló | 73 |
A ToolsAPI további lehetőségei | 75 |
Tulajdonságok elérése név szerint | 76 |
Dinamikusan szerkesztett könyvtárak | 83 |
A DLL-ek szerepe Windows alatt | 83 |
Mi is az a dinamikus szerkesztés? | 83 |
Mire való a DLL? | 85 |
A rendszer DLL-jei | 87 |
Csomagok (package-ek) statikus és dinamikus használata | 88 |
Különbségek a DLL-ek és az EXE-k között | 88 |
A DLL készítésének alapszabályai | 89 |
A Win16 és a Win32 DLL-ek | 89 |
A meglévő DLL-ek használata | 90 |
DLL készítése C++-ban | 91 |
C++ DLL függvény deklarálása Delphiben | 92 |
DLL létrehozása Delphiben | 95 |
Az első egyszerű Delphi DLL | 96 |
Delphi DLL hívása | 97 |
Delphi form a DLL-ben | 99 |
A DLL meghívása Delphiből | 101 |
Delphi DLL hívása a Visual Basic for Applications nyelvből | 102 |
Ikonokat tartalmazó DLL készítése | 103 |
Ikonok betöltése DLL-ből | 104 |
DLL függvény meghívása futásidőben | 106 |
A DLL a memóriában | 108 |
OLE és COM | 113 |
Mi is voltaképpen az OLE és a COM? | 113 |
Objektumok a DLL-ekben | 115 |
Osztályok egy DLL-en belül | 115 |
Osztály használata DLL-ből | 117 |
Az IUnknown implementálása | 120 |
IUnknown metódusok implementálása | 120 |
Globális egyedi azonosítók | 122 |
Az osztálygyárak szerepe | 125 |
Delphi 2 COM interfészek használata | 125 |
A TComObject osztály | 126 |
COM objektumok inicializálása | 128 |
A COM kliens program frissítése | 131 |
Az interfész tulajdonságok használata | 134 |
Shell interfész használata | 135 |
Shell csatolások (vagy parancsikonok) készítése | 135 |
Megerősítést kérő ablak Pascal fájlokhoz | 137 |
Az OLE Automation és OLE Document technikák | 145 |
Az OLE Automation | 145 |
Adatok küldése a Wordnek | 146 |
Adat küldése a Microsoft Wordnek egy adatbázisból | 147 |
OLE Automation szerver írása | 150 |
A típuskönyvtárak | 150 |
A típuskönyvtár-szerkesztő | 152 |
Az Automation szerver regisztrálása | 156 |
Írjunk klienst a szerverünkhöz! | 156 |
Az OLE dokumentum | 159 |
Az OleContainer komponens használata | 161 |
Egy egyszerű OLE tároló | 161 |
OLE tároló bővítése menüsorral | 164 |
A vizuális szerkesztés és az eszköztárak | 166 |
A szabványos OLE párbeszédablakok | 167 |
Objektumok betöltése fájlból és mentése fájlba | 169 |
Többszörös OLE tárolók | 170 |
ActiveX kontrolok használata és készítése | 175 |
ActiveX vezérlők bemutatása | 175 |
ActiveX vezérlők kontra Delphi komponensek | 177 |
ActiveX vezérlők használata Delphiben | 177 |
ActiveX vezérlők telepítése | 178 |
A TOIeControl osztály | 180 |
ActiveX vezérlők használata | 180 |
Grafikonok készítése | 182 |
ActiveX vezérlő írása | 183 |
Az Arrow komponens átírása ActiveX vezérlővé | 183 |
Új tulajdonságok hozzáadása egy vezérlőhöz | 188 |
Tulajdonságlap hozzáadása a komponenshez | 190 |
Internetes programozás | 197 |
HTML fájlok böngészése | 197 |
HTML fájlok készítése | 202 |
Egy egyszerű HTML oldal generálása | 203 |
HTML táblák készítése | 206 |
HTML oldalak kívánság szerinti készítése | 210 |
ActiveFormok létrehozása | 211 |
ActiveX form szerepe egy weblapon | 215 |
Többlapos ActiveFormok | 216 |
FEJLETT DELPHI PROGRAMOZÁS | 219 |
Az alkalmazások szerkezete | 223 |
Az Application objektum használata | 223 |
Az alkalmazás-ablak megjelenítése | 226 |
Az alkalmazások rendszermenüje | 227 |
Alkalmazások és formok aktiválása | 229 |
Egy alkalmazás példányainak kezelése | 230 |
A fő ablak egy másolatának felkutatása | 231 |
Az előző főform aktiválása | 231 |
A felhasználó által definiált Windows üzenetek kezelése | 233 |
Keresés az ablaklistában | 234 |
Kölcsönös kizárás (mutex) használata | 236 |
Komponensek nélküli programozás | 236 |
A legkisebb Delphi program? | 237 |
A parancssor olvasása | 238 |
Események, üzenetek és párhuzamos programozás a Windowsban | 240 |
Eseménykezelt programozás | 240 |
A Windows üzenetkézbesítése | 241 |
Egy óra elkészítése időzítő segítésével | 242 |
Egy grafikus óra | 244 |
A másodpercmutató megrajzolása raszterműveletekkel | 247 |
Háttérszámítás és párhuzamos programozás | 249 |
Háttérszámítás | 250 |
Prímszámok keresése | 250 |
A "homokórás" megközelítés | 251 |
Háttértevékenység időzítőkkel | 253 |
Üzenetek feldolgozása a háttérben | 254 |
Háttérszámolás | 255 |
Párhuzamos programozás a Delphiben | 256 |
A TThread osztály | 257 |
Az első példa | 258 |
Egy zároló példa | 259 |
Szinkronizálási lehetőségek | 261 |
A szálak prioritása | 261 |
Szálak szinkronizálása | 263 |
Várakozás egy szálra | 264 |
Windows összehangolási technikák | 268 |
A TCriticalSection VCL objektum használata | 272 |
A Screen objektum használata | 273 |
Képernyőinformációk lekérdezése | 273 |
A formlista kezelése | 274 |
Állapotinformációk elmentése | 277 |
Windows INI fájlok használata | 278 |
A Registry használata | 281 |
Egy program működésének vizsgálata | 291 |
A hibakereső (Debugger) használata | 291 |
Hibakeresési információ | 292 |
A töréspontok beállítása | 293 |
Az értékek vizsgálata | 299 |
Bővebben a töréspontokról | 301 |
Nyomkövetés a VCL forráskódban | 303 |
Hibakeresés, másképpen | 304 |
Hibakeresés terminálablak segítségével | 304 |
Fejlesztési és terjesztési verziók, avagy a feltételes fordítás használata | 306 |
Állítások (assertion) használata | 308 |
Egy futtatható állomány vizsgálata az Object Browser segítségével | 310 |
Az üzenetvezérlés elemzése | 312 |
A WinSight használata | 312 |
Az elküldött üzenetek nyomon követése | 317 |
Az alkalmazás a memóriában | 321 |
A Windows rendszermemóriája | 323 |
A szabad rendszermemória | 324 |
Erőforrások használata | 329 |
Windows erőforrások | 329 |
Az erőforrás szerkesztők használata | 330 |
Ikon vagy bittérkép felhasználása komponens tulajdonságaként | 333 |
Az erőforrások közvetlen beolvasása | 334 |
Programok és formok ikonjai | 336 |
Többféle ikon használata a megváltozott állapotok jelzésére | 337 |
A Tálca ikontartójának használata | 339 |
A memóriaállapot megjelenítése az ikontartóban | 340 |
A fő ablak elrejtése és megjelenítése | 343 |
A tartóban lévő ikon elrejtése | 345 |
A kurzor használata a Delphiben | 346 |
Saját kurzor készítése | 347 |
Változtatható kurzor | 350 |
Stringtábla erőforrások használata | 354 |
A stringek lefordítása idegen nyelvre | 359 |
Verziószámok kezelése | 361 |
Nyomtatás Delphi alkalmazásokból | 367 |
Az egész form kinyomtatása | 367 |
Saját nyomtatási párbeszédablak | 368 |
A szabványos nyomtatás párbeszédablakok | 369 |
A Printer objektum használata | 371 |
Grafikák nyomtatási képe | 372 |
A nyomtatási kód megosztása | 376 |
Szöveg nyomtatása | 378 |
Adatbázisrekordok és -táblák nyomtatása | 381 |
A QuickReport komponensek | 384 |
Egy gyors példa | 385 |
ReportSmith jelentések készítése | 388 |
Saját jelentés készítése | 390 |
ReportSmith makró készítése | 393 |
Gyorsabban a ReportSmithnél | 396 |
Fájlműveletek az alkalmazások készítésénél | 401 |
A fájlok és a Pascal nyelv | 401 |
Szövegfájlok kezelése | 402 |
Egy szövegkonverter | 406 |
Általános adatok mentése | 410 |
Fájlkezelés a Delphi komponensekben | 414 |
Fájlrendszer komponensek | 414 |
Az adatfolyamok | 417 |
Számfolyamok | 419 |
Komponensfolyamok | 420 |
Adatcsere | 427 |
Mi is a vágólap? | 427 |
A Delphi vágólap-támogatása | 429 |
Szöveg másolása és beillesztése | 429 |
Bitképek másolása és beillesztése | 432 |
Delphi komponensek bemásolása a vágólapra | 435 |
Speciális adat másolása a vágólapra | 439 |
Dynamic Data Exchange - technikai áttekintés | 443 |
DDE párbeszédek | 443 |
A szerver és a kliens szerepe | 443 |
DDE a Delphiben | 445 |
Egy egyszerű DDE példa | 445 |
DDE csatolások másolása és beillesztése | 449 |
Kapcsolat adat másolása a vágólapra | 449 |
A DDE használata időzítők és grafikák esetében | 450 |
Az automata szerver | 450 |
Grafikus DDE kliens | 451 |
Multimédiás lehetőségek | 457 |
A Windows alapértelmezett hangjai | 457 |
Minden ablaknak megvan a maga hangja | 458 |
A csipogástól a szimfóniákig | 462 |
Alapértelmezett hangok használata | 463 |
A Médialejátszó komponens | 464 |
Hangfájlok lejátszása | 465 |
Videóklipek lejátszása | 467 |
Videóklip a formon | 468 |
A CD meghajtó használata | 470 |
Utószó | 473 |
FÜGGELÉK | 475 |
Az OOP szemlélet rövid áttekintése | 479 |
Absztrakció a programozási nyelvekben | 479 |
Osztályok | 479 |
Öröklődés | 480 |
Polimorfizmus | 481 |
Az OOP egy definíciója | 482 |
Az OOP nyelvek | 482 |
Tiszta és hibrid OOP nyelvek | 483 |
Statikus és dinamikus típusellenőrzés | 483 |
Tradicionális és referenciaelvű objektummodell | 483 |
Objektum-orientált elemzés és tervezés | 484 |
Bevezetés az SQL-be | 487 |
Mi az SQL? | 487 |
A Select utasítás | 487 |
Ismétlődő rekordok kiküszöbölése | 488 |
Kapcsolatok létrehozása | 489 |
A listázási sorrend megváltoztatása | 489 |
Számított értékek | 490 |
Csoportok definiálása | 490 |
További SQL utasítások | 490 |