abc delphi 2006 full version.pdf

(9910 KB) Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
IDZ DO
PRZYK£ADOW Y ROZDZIA£
ABC Delphi 2006
SPIS TREœCI
Autor: Jacek Matulewski
ISBN: 83-246-0573-8
Format: B5, stron: 320
Przyk³ady na ftp: 3950 kB
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Œrodowisko programistyczne Delphi od lat cieszy siê zas³u¿on¹ popularnoœci¹ wœród
twórców oprogramowania. Potê¿ne narzêdzie programistyczne, oparte na popularnym
jêzyku Pascal, by³o prekursorem œrodowisk wizualnych, w których tworzenie aplikacji
przypomina budowanie modelu z klocków. Kolejne wersje Delphi by³y wykorzystywane
do tworzenia przeró¿nych aplikacji — pocz¹wszy od prostych programików,
a skoñczywszy na rozbudowanych systemach bazodanowych. Najnowsza wersja,
oznaczona symbolem 2006, umo¿liwia tworzenie aplikacji dla platformy .NET
oraz „tradycyjnych” aplikacji Win32.
Ksi¹¿ka „ABC Delphi 2006” to wprowadzenie do programowania w tym œrodowisku.
Na praktycznych przyk³adach przedstawia najnowsz¹ wersjê Delphi, jêzyk Object
Pascal oraz filozofiê tworzenia aplikacji na podstawie komponentów VCL. Czytaj¹c j¹,
poznasz œrodowisko programistyczne, elementy jêzyka Object Pascal oraz zasady
programowania strukturalnego i obiektowego. Nauczysz siê budowaæ w³asne aplikacje
dla systemu Windows oraz wykorzystywaæ i tworzyæ komponenty VCL. Zdobêdziesz
solidne podstawy do dalszej nauki programowania w Delphi.
Struktura projektu w Delphi
Typy danych i zmienne
Instrukcje steruj¹ce, pêtle i wyra¿enia warunkowe
Programowanie obiektowe
Wykrywanie i usuwanie b³êdów w kodzie
Korzystanie z komponentów VCL
Programowanie grafiki
Operacje na plikach i drukowanie
Zapisywanie informacji w rejestrze Windows
Projektowanie komponentów
Poznaj jedno z najpopularniejszych narzêdzi programistycznych
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOœCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
863457067.031.png 863457067.032.png 863457067.033.png 863457067.034.png 863457067.001.png 863457067.002.png 863457067.003.png 863457067.004.png 863457067.005.png 863457067.006.png 863457067.007.png 863457067.008.png 863457067.009.png 863457067.010.png 863457067.011.png 863457067.012.png 863457067.013.png 863457067.014.png 863457067.015.png
 
Wstęp ........................................................................... 11
I
Środowisko programistyczne
Borland Developer Studio
i język programowania Object Pascal ..........15
1
Poznajemy możliwości Delphi ........................................ 17
Platformy Win32 i .NET ................................................................. 18
Co to jest Win32? ...................................................................... 18
Czym jest platforma .NET? ...................................................... 19
Pierwszy projekt ............................................................................. 20
Projekt VCL Forms Application — Delphi for Win32 .............. 21
Jak umieścić komponent na formie? ....................................... 22
Co to jest inspektor obiektów? ................................................. 23
Jak za pomocą inspektora obiektów zmieniać
własności komponentów? ...................................................... 23
Jak dopasować położenie komponentu? ................................. 26
Jak umieszczać na formie wiele komponentów
tego samego typu? .................................................................. 26
Jak zaznaczyć wiele komponentów jednocześnie? ................. 27
Jak zaprogramować reakcję programu na kliknięcie
panelu przez użytkownika? ................................................... 27
Domyślna metoda zdarzeniowa ............................................... 28
Polecenie ShowMessage ........................................................... 28
CodeInsight, czyli nieoceniona pomoc
w trakcie edycji kodu ............................................................. 29
863457067.016.png 863457067.017.png 863457067.018.png
ABC Delphi 2006
Model zdarzeniowy projektowania aplikacji .......................... 30
Jak uruchomić projektowaną aplikację? ................................. 30
Jak przełączać między widokiem projektowania
i edytorem? ............................................................................. 31
Jak ustalić pozycję okna po uruchomieniu aplikacji? ............ 31
Jak zmieniać własności obiektów programowo? ................... 32
Jak zapisać projekt na dysku? ................................................. 33
Oznaczenie zmian w kodzie ..................................................... 35
Pliki projektu Win32 ................................................................ 35
Pierwsze podsumowanie .......................................................... 36
Ustawienia projektu ....................................................................... 36
Jak zmienić tytuł i ikonę aplikacji? ......................................... 36
Informacje o wersji aplikacji dołączane
do skompilowanego pliku .exe .............................................. 37
Déjà vu, czyli pierwszy projekt w wersji dla platformy .NET ..... 40
Projekt VCL Forms Application — Delphi for .NET ................ 40
Pliki projektu VCL.NET ............................................................ 43
Dystrybucja programów ................................................................ 44
Projekty VCL Forms Application — Delphi for Win32 ........... 44
Projekty dla .NET korzystające z biblioteki
Windows Forms ..................................................................... 44
Projekty VCL Forms Application — Delphi for .NET .............. 44
Win32 albo .NET? — oto jest pytanie ........................................... 45
Konfiguracja środowiska Delphi 2006 ........................................... 47
Okno postępu kompilacji .......................................................... 47
Automatyczne zapisywanie plików projektu .......................... 47
Modyfikowanie menu File/New ............................................... 48
Edytor kodu .................................................................................... 50
Opcje edytora ............................................................................ 50
2
Analiza kodu pierwszej aplikacji,
czyli wprowadzenie do języka Object Pascal ....................53
Wczytywanie istniejącego projektu .............................................. 54
Jak wczytać wcześniej zapisany projekt do Delphi? .............. 54
Plik Kolory.dpr ............................................................................... 54
Moduł Unit1.pas ............................................................................. 57
Jak wczytać moduł będący elementem projektu? .................. 57
Czym jest moduł? ...................................................................... 58
Sekcje modułu ........................................................................... 59
Interfejs modułu Unit1 ............................................................. 59
Implementacja .......................................................................... 60
Pliki .dfm i .nfm .............................................................................. 61
Kod źródłowy projektu dla platformy .NET ................................. 61
3
Typy zmiennych i instrukcje sterujące,
czyli o tym, co każdy programista umieć musi .................63
Podstawy ........................................................................................ 64
Równanie kwadratowe ............................................................ 64
Przygotowanie interfejsu ......................................................... 66
Deklarowanie zmiennych ......................................................... 67
4
863457067.019.png 863457067.020.png 863457067.021.png 863457067.022.png
Spis treści
Dygresja na temat typów rzeczywistych w Delphi ................. 68
Konwersja łańcucha na liczbę .................................................. 69
Obliczenia arytmetyczne i ich kolejność ................................. 71
Typ logiczny i operatory logiczne ............................................ 72
Instrukcja warunkowa if .......................................................... 73
Jak wyłączyć podpowiadanie przez edytor
szablonów instrukcji? ............................................................. 74
O błędach w kodzie i części else instrukcji warunkowej ........ 75
Procedura Exit .......................................................................... 78
Na tym nie koniec ........................................................................... 79
Typy całkowite Delphi .............................................................. 79
Instrukcja wielokrotnego wyboru case ................................... 81
Procedura ShowMessage .......................................................... 83
Obsługa wyjątków .......................................................................... 84
Czym są i do czego służą wyjątki? ........................................... 84
Przechwytywanie wyjątków .................................................... 85
Zgłaszanie wyjątków ................................................................ 87
Pętle ................................................................................................. 88
Pętla for ..................................................................................... 88
Pętla for w praktyce, czyli tajemnica pitagorejczyków .......... 89
Uwaga o instrukcji goto, którą należy czytać
z zamkniętymi oczami ............................................................ 92
Pętla repeat..until ..................................................................... 92
Pętla while..do .......................................................................... 93
Procedury Break i Continue ..................................................... 94
Podsumowanie ................................................................................ 96
Typy złożone ................................................................................... 96
Tablice ....................................................................................... 96
Pętla for..in..do .......................................................................... 98
Tablice dwuwymiarowe ........................................................... 99
Definiowanie własnych typów ............................................... 100
Tablice dynamiczne ................................................................ 100
Typy wyliczeniowe ................................................................. 101
Zbiory ...................................................................................... 102
Rekordy ................................................................................... 106
Jak sprawdzić zawartość tablicy rekordów? ........................ 109
Instrukcja with ....................................................................... 109
Kombinacja rekordów i typów wyliczeniowych ................... 110
Kilka słów o konwersji typów ...................................................... 111
Łańcuchy ....................................................................................... 112
Dyrektywy preprocesora .............................................................. 114
Definiowanie bloków .............................................................. 114
Kompilacja warunkowa .......................................................... 116
Wskaźniki ..................................................................................... 117
Czym są wsaźniki? .................................................................. 117
Podstawowe konstrukcje ........................................................ 118
Wskaźniki w projekcie .NET .................................................. 119
Do czego mogą służyć wskaźniki? ......................................... 120
Wskaźniki — unikać, czy nie? ................................................ 120
5
863457067.023.png 863457067.024.png 863457067.025.png 863457067.026.png
ABC Delphi 2006
W domu: ....................................................................................... 121
Zdegenerowane równanie kwadratowe ................................ 121
Silnia ....................................................................................... 121
Imitacja pętli for ..................................................................... 121
NWD ........................................................................................ 121
Ikony formy ............................................................................ 122
Typ wyliczeniowy i zbiór ....................................................... 122
Rekordy ................................................................................... 122
Instrukcja with ....................................................................... 122
4
Programowanie strukturalne ........................................123
Procedury, funkcje, moduły ......................................................... 124
Procedury ................................................................................ 124
Definiowanie procedury ......................................................... 125
Interfejs modułu ..................................................................... 127
Parametry procedur przekazywane przez wartość .............. 129
Większa ilość parametrów ..................................................... 129
Wartości domyślne parametrów ............................................ 130
Parametry przesyłane przez zmienną (referencję) ................ 130
Funkcje .................................................................................... 131
Funkcje imitujące globalne stałe ........................................... 133
Zmienne proceduralne ............................................................ 133
W domu ......................................................................................... 134
Funkcje Silnia i NWP .............................................................. 134
Sekcje initialization i finalization modułu ............................ 134
5
Programowanie obiektowe ............................................135
Pojęcia obiekt i klasa .................................................................... 135
Klasa ........................................................................................ 136
Referencje (zmienne obiektowe) ............................................ 137
Tworzenie obiektów ............................................................... 138
Jeden obiekt może mieć wiele referencji .............................. 140
Interfejs i implementacja klasy ................................................... 141
Definicja klasy ........................................................................ 141
Projektowanie klasy — ustalanie zakresu dostępności
pól i metod ............................................................................ 142
Pola .......................................................................................... 144
Konstruktor klasy — inicjowanie stanu obiektu .................. 144
Referencja Self ........................................................................ 146
Tworzenie obiektów ............................................................... 146
Usuwanie obiektów z pamięci w projektach
dla platformy Win32 ............................................................ 147
Metoda Free w platformie .NET ............................................ 147
Metoda prywatna ................................................................... 148
Zbiór metod publicznych udostępniających wyniki ............. 149
Testowanie klasy .................................................................... 150
Przechwytywanie wyjątków .................................................. 151
Zwiększona kontrola zakresu dostępności .................................. 151
Przestrzenie nazw .................................................................. 151
Nowe zakresy dostępności w klasach ................................... 152
Blokowanie dziedziczenia ...................................................... 153
6
863457067.027.png 863457067.028.png 863457067.029.png 863457067.030.png
Zgłoś jeśli naruszono regulamin