[ Pobierz całość w formacie PDF ]

nie samodzielnym programem, który zaczynałby się od słowa kluczowego program,
a tylko oddzielną jednostką kodu, w której zdefiniowane mogą być procedury
i funkcje oraz klasy i ich metody (formalnie nazywane procedurami i funkcjami
składowymi). Nazwą tego modułu jest Unit1, wskazuje ją pierwsza linia kodu.
Listing 2.2. Pełen kod modułu, w którym zdefiniowana jest forma
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
ScrollBar1: TScrollBar;
ScrollBar2: TScrollBar;
ScrollBar3: TScrollBar;
procedure ScrollBar1Change(Sender: TObject);
procedure Panel1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Panel1Click(Sender: TObject);
begin
ShowMessage('Witaj Zwiecie!');
end;
58
Analiza kodu pierwszej aplikacji, czyli wprowadzenie do języka Object Pascal
procedure TForm1.ScrollBar1Change(Sender: TObject);
begin
panel1.Color:=RGB(scrollbar1.Position,scrollbar2.Position,scrollbar3.Position);
end;
end.
Dla osób rozpoczynających programowanie pojęcia procedury, funkcji i metody,
są one oczywiście nowościami i w związku z tym częste ich używanie może łatwo
spowodować lekki zawrót głowy. Bez obawy, wszystkie te terminy zostaną jesz-
cze wyjaśnione w rozdziale czwartym. Już mamy jednak pewną intuicję, czym
one są  de facto dwie metody napisaliśmy przecież w poprzednim rozdziale.
Sekcje modułu
Każdy moduł podzielony jest na dwie części: interfejs i implementacje. Są to nie
tylko nazwy części modułów, ale i podstawowe terminy programowania struk-
turalnego. Interfejs to zbiór tych procedur, funkcji i klas, które są udostępniane
przez ten moduł innym modułom, jego część publiczna. Wszystkie deklaracje, które
znajdują się w sekcji interface modułu Unit1, są widoczne np. z pliku Kolory.dpr.
W szczególności dostępna jest tam klasa TForm1, której definicja jest też w sekcji
interface. Natomiast implementacja to część prywatna modułu. W niej znajdują
się kody procedur, funkcji i metod. Mogą być tu również zadeklarowane pomoc-
nicze zmienne. Jeżeli funkcja zdefiniowana jest w sekcji implementacji i nie jest
zadeklarowana w sekcji interfejsu, nie będzie widoczna poza modułem.
Poza tym moduł może zawierać jeszcze sekcję initialization, która służy do wy-
konywania poleceń w momencie wczytywania modułu do pamięci przy starcie
programu, oraz sekcję finalization, która pozwala na określenie czynności zwią-
zanych z kończeniem pracy modułu przy zamykaniu programu. Może to być na
przykład otwieranie pliku rejestrowania zdarzeń aplikacji i jego zamykanie. Sekcje
te nie są domyślnie tworzone w modułach Delphi, i w tej książce, poza prostym
ćwiczeniem w rozdziale 4, nie użyjemy ich ani razu.
Interfejs modułu Unit1
W interfejsie modułu Unit1 widzimy trzy sekcje: uses, type i var. W pierwszej
wymienione są inne moduły, których zawartość ma być widoczna w trakcie kom-
pilacji bieżącego modułu.
Sekcja type zawiera natomiast definicje nowych typów, które są zdefiniowane
w module Unit1. W naszym przypadku zdefiniowany jest tam typ TForm1, który,
który rozpoczyna się od linii:
type
TForm1 = class(TForm)
59
ABC Delphi 2006
Po niej następują definicje zmiennych: Panel1, która związana jest z panelem, i trzy
zmienne: ScrollBar1, ScrollBar2 i ScrollBar3, reprezentujące suwaki. Widoczne
są również deklaracje dwóch metod zdarzeniowych, które stworzyliśmy, a więc
Panel1Click i ScrollBar1Change. One również są zadeklarowane w klasie formy
 wobec tego też są w jakiś sposób z nią związane. To jest właśnie definicja
klasy TForm1. Zmienne zdefiniowane w jej obrębie nazywane są polami. Panel1 jest
zatem polem klasy TForm1. Natomiast funkcje i procedury zdefiniowane w obrębie
klasy będziemy nazywać metodami. Nie chciałbym jednak teraz dalej rozwijać [ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • szamanka888.keep.pl