Czytając tę książkę zrozumiesz, dlaczego Delphi zaliczane jest do narzędzi do błyskawicznego tworzenia aplikacji (RAD). Tworząc programy o różnym stopniu komplikacji poznasz te elementy, na których Delphi opiera swą siłę, zaznajomisz się również z najważniejszymi elementami języka Object Pascal. Nauczysz się efektywnie wykorzystywać mechanizmy funkcjonalne środowiska zintegrowanego IDE – i w krótkim czasie stworzysz prawdziwy (być może Twój pierwszy) program dla Windows. Posługując się komponentami VCL zapoznasz się z ich właściwościami, metodami i zdarzeniami, a także z ich możliwościami w zakresie bezpośredniej obsługi komunikatów Windows; zobaczysz również, w jak ogromnym stopniu Delphi wspomaga tworzenie i wykorzystywanie kontrolek ActiveX stanowiących przejaw zdobywającej coraz większą popularność technologii COM. Poznasz również filozofię tworzenia w Delphi aplikacji bazodanowych i komponenty oraz mechanizmy biorące udział w tym procesie. Przekonasz się także, z jaką łatwością można w Delphi tworzyć aplikacje i kontrolki dla żywiołowo rozwijających się zastosowań internetowych.
Tłumaczenie: Andrzej Grażyński, Janusz Grabis, Wiesław Skarzyński, Aleksander Miler
Projekt okładki: Maciej Pasek, „ARTGRAF”
Authorized translation from the English language edition published by Sams Publishing
Copyright © 1998
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher.
Polish language edition published by Wydawnictwo Helion.
Copyright © 1999
ISBN: 83-7197-034-X
Wydawnictwo Helion
ul. Chopina 6, 44-100 GLIWICE
tel. (32) 231-22-19, (32) 230-98-63
e-mail: helion@helion.com.pl
www.helion.pl (księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres: www.helion.com.pl/ksiazki/delph4.htm
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Wszystkie znaki występujące w tekście książki są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.
Autor oraz Wydawnictwo Helion dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich.
Autor oraz Wydawnictwo Helion nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji.
Printed in Poland.
Spis treści 15
O autorze 17
Dedykacja 17
Podziękowania 17
Wstęp – jesteś tutaj 19
Przedmowa do wydania polskiego 21
Część I
Rozdział 1. Zaczynamy 25
Czym właściwie jest Delphi? 25
Rzut oka na Delphi IDE 26
Inspektor Obiektów 27
Przestrzeń robocza 27
Twój pierwszy program: Hello World 28
Tworzenie programu 28
Modyfikacja programu 29
Zamknięcie projektu 30
Twój drugi program: Hello World II 30
Tworzenie programu Hello World II 30
Modyfikacja programu Hello World II 31
Przegląd języka Object Pascal 32
Trochę historii 33
Moduły 34
Komentarze 41
Zmienne 42
Typy danych w Object Pascalu 44
Operatory w Object Pascalu 48
Stałe 48
Tablice 50
Łańcuchy 53
Podsumowanie 61
Warsztat 61
Pytania i odpowiedzi 61
Quiz 62
Ćwiczenia 62
Rozdział 2. Pascal bardziej zaawansowany 63
if, then, else 63
Wykonywanie wielu instrukcji 64
Dodajemy else 65
Zagnieżdżone instrukcje if 66
Wyrażenie if ... then ... else, wariant 1 67
Wyrażenie warunkowe if ... then ... else, wariant 2 68
Pętle 68
Pętla for 69
Pętla while 73
Pętla repeat 74
Instrukcja goto 75
Procedury Continue i Break 77
Instrukcja case 78
Zakres widzialności 79
Rekordy 81
Instrukcja with 82
Tablice rekordów 83
Pliki dołączane 83
Funkcje, procedury i metody 84
Deklaracja i definicja 88
Parametry przekazywane przez stałą, przez wartość i przez referencję 90
Funkcje i procedury lokalne 92
Przeciążanie funkcji i procedur 93
Parametry domyślne procedur i funkcji 94
Podsumowanie 95
Warsztat 95
Pytania i odpowiedzi 96
Quiz 96
Ćwiczenia 97
Rozdział 3. Klasy i programowanie zorientowane obiektowo 99
Zbiory 99
Rzutowanie typów 101
Wskaźniki 102
Zmienne statyczne kontra zmienne dynamiczne 103
Alokacja dynamiczna i wskaźniki 104
Odwoływanie się do danych dynamicznych 105
Klasy 106
Anatomia klasy 107
Poziomy dostępu do składników klasy 107
Konstruktory 109
Destruktory 111
Pola 113
Metody 114
Wskaźnik Self 115
Przykład klasy 117
Dziedziczenie 121
Zastępowanie metod 122
Słowa kluczowe: is i as 124
Podsumowanie 125
Warsztat 125
Pytania i odpowiedzi 125
Quiz 126
Ćwiczenia 127
Rozdział 4. Środowisko zintegrowane (IDE) 129
Delphi IDE 129
Projekty 130
Pliki używane w projektach 131
Pliki źródłowe modułów 134
Menu główne i paski narzędzi 135
Używanie Palety Komponentów 136
Umieszczanie wielu kopii danego komponentu na formularzu 137
Umieszczanie komponentów na środku formularza 138
Menu kontekstowe palety komponentów 138
Poruszanie się po Palecie Komponentów 138
Aplikacja składająca się z wielu formularzy 139
Dodawanie modułów 141
Kompilowanie, budowanie i łączenie 141
Kompilacja innych rodzajów programów w Object Pascalu 143
Więcej o formularzach Delphi 144
Formularze okna głównego 144
Formularze okien dialogowych 144
Tradycyjne okna dialogowe 145
Okna dialogowe Delphi 147
Tworzenie formularza okna dialogowego 147
Okna drugorzędne a okna dialogowe 150
Model aplikacji wielodokumentowej 151
Najważniejsze właściwości formularzy 151
Właściwości ustawiane w czasie projektowania aplikacji 152
Właściwości ustawiane w czasie działania programu 154
Metody formularzy 154
Metody MDI 155
Zdarzenia formularzy 155
Inspektor Obiektów 156
Lista wyboru komponentu 157
Karta Properties 158
Karta Events 160
Dokowalne okna IDE 161
Miejsca dokowania 162
Eksperymentowanie z oknami dokowalnymi 162
Wyłączanie dokowania 164
Przykładowy program MDI 165
Utworzenie formularza głównego 166
Napisanie kodu obsługującego opcje File | Open i File | Save as… 168
Napisanie kodu obsługującego opcje menu Window 169
Utworzenie okna podporządkowanego MDI 170
Utworzenie okna „O Programie” 171
Końcowe poprawki 173
Podsumowanie 174
Warsztat 175
Pytania i odpowiedzi 175
Quiz 176
Ćwiczenia 176
Rozdział 5. Model komponentów wizualnych 179
Podstawowe wiadomości o bibliotekach klas 179
Dlaczego powinniśmy się zajmować bibliotekami klas? ...
SacrA