NoName 11 - magazyn internetowy - mamy najwięcej najlepszych artykułów    
 
 
 

Program JSBuilder 1.5 - darmowy polski edytor JavaScript!

 Komputery    

Kurs Delphi - cz 1

Witam! Jeżeli czytacie ten text to znaczy, ze chcecie się nauczyć programowania w Delphi?! Na samym początku omówię, czym jest Delphi: Jest to środowisko programistyczne oparte na języku Object Pascal. Jeżeli umiesz programować, w Turbo Pascalu to Delphi nie sprawi Ci większych problemów. Ten kurs jest pisany na podst. wersji 5.0, więc jeżeli masz starsza wersje to niektóre procedury opisywane w tym kursie mogą Ci nie zadziałać.

No, to, co? Zaczynamy? Już niedługo zaczniesz pisać całkiem niezłe programy ( np. ten text pisany jest w edytorze napisanym w Delphi).

Po uruchomieniu Delphi na ekranie widzisz kilka okien. To po lewej to INSPEKTOR OBIEKTOW. W tym oknie ustawia się właściwości i opcje KOMPONENTOW. Komponent jest to obiekt, który wykonuje pewna określoną funkcje. Istnieje możliwość pisania własnych komponentów, ale nie jest to łatwe i na razie nie będziemy się tym zajmować. Widzisz te zakładki: Standard, Additional itd.? Jest to PALETA KOMPONENTOW, na której znajdują się komponenty. Na samym środku znajduje się tzw. FORMULARZ. Delphi opiera się na projektowaniu obiektowym tak wiec podczas projektowania mamy możliwość podglądać jak program będzie wyglądał podczas działania. Dosyć gadania - pewnie nie możecie doczekać się swojego pierwszego programu? Na palecie komponentów ( zakładka "Standard" ) znajduje się komponent Label ( ikona z litera "A" ). Nie robi on nic szczególnego - zwykła etykieta testowa. Tak wiec kliknij na ta ikonke. Teraz musisz zamieścić komponent na formularzu. Okno z tytułem "Form1" to Twój program. Po prostu po kliknieciu na komponent "Label" kliknij w dowolne miejsce formularza - komponent zostanie umieszczony. Możesz go dowolnie przemieszczać i zmieniać rozmiary. Wystarczy, ze go zaznaczysz ( pojedyncze klikniecie ) a następnie trzymając wciśnięty klawisz myszy przesuniesz komponent w dowolne miejsce. Zauważ, ze, gdy komponent zostanie zaznaczony w Inspektorze Obiektów pojawiają się nowe opcje, które charakteryzują jego wygląd itp. Właściwość "Caption" określa text, który widniał będzie w komponencie Label. Możesz wpisać tam dowolny text - np.: "Witam!". W Isnepktorze Obiektów znajduje się również właściwość "Font" - charakteryzuje ona czcionkę, jaka będzie używana do wyświetlenia napisu w komponencie "Label". Właściwość "Font" po lewej stronie posiada krzyżyk - po jego kliknieciu rozwinie się pod - menu. Znajdziesz tam m.in. właściwość "Color" - kolor tekstu; "Size" - rozmiar tekstu; "Name" - nazwa czcionki. Pola te edytuje się w prosty sposób. Niektóre pola posiadają menu rozwijalne - po kliknieciu na strzałkę rozwinie się lista, w której można wybrać odpowiednia opcje. W takim polu jak "Size" opcje się wpisuje. Tak zrób także i w tym przypadku ( ja wpisałem w tym polu liczbę 20).

Moje gratulacje stworzyłeś w ten sposób pierwszy program! Nie, programowanie w Dlephi nie opiera się tylko na "budowaniu" :) Nie łudź się - jest to nieco trudniejsze :)

Żeby uruchomić program naciśnij klawisz F9 lub z menu "Run" wybierz "Run". W pierwszej chwili możesz nawet nie zauważyć, ze program został uruchomiony - zdradza to jedynie znikniecie Inspektora Obiektów. Teraz możesz chcieć zapisać program. Z menu "File" wybierz "Save All". UWAGA! Zapisuj każdy program w osobnym katalogu! Zobacz zresztą ile plików zostało stworzonych, kiedy zapisałeś swój program. Po krotce omówię najważniejsze pliki:

- dpr - jest to główny plik programu; jego kod możesz modyfikować (zajmiemy się tym później) i będzie on wykonywany przed stworzeniem formularza.

- pas - to jest kod źródłowy formularza.

- dfm - plik formularza; zawiera informacje o rozmiarach formularza (wymiary, używana czcionkę itp.)

Oczywiście oprócz tego są jeszcze inne typy plików, ale są one mniej ważne. Wyobraź sobie, ze chcesz dać kumplowi kod źródłowy. Nie musisz dawać wszystkich plików. Wystarczy, ze dasz pliki dpr, pas, dfm i ew. res. Pozostałe ( włącznie z EXE ) możesz wykasować. Tworzenie pliku EXE nazywa się KOMPILACJĄ. Kompilacja polega na przetłumaczeniu kodu źródłowego *.pas na program wykonywalny EXE. Kompilacja następuje po wybraniu z menu "Project" -> "Bulid".


Tak jak powiedziałem - programowanie w Delphi nie opiera się wyłącznie na "budowaniu". Stwórz nowa aplikacje ( "File" -> "New Application" ). Teraz naciśnij klawisz F12 - zostaniesz przeniesiony do EDYTORA KODU. Powinien przedstawiać się on w ten sposób:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

end.


Na samym początku następuje deklaracja nazwy MODULU. Moduł jest to plik tekstowy, który może być kompilowany do postaci pliku wykonywalnego. Program, który kompiluje moduł to kompilator. Po słowie "uses" następuje wypisanie wszystkich modułów wchodzących w skład naszego modułu. Wiem, ze na początku może się to Wam wydać niejasne, ale z czasem zrozumiecie, o co chodzi. Zresztą w razie jakichkolwiek problemów piszcie do mnie: boduch@poland.com Tak jak mówiłem w innych modułach wchodzących w skład naszego wypisane są deklaracje funkcji, których będziemy używać. Umieść na formularzu komponent Button.

Teraz naciśnij klawisz F12 - zostaniesz przeniesiony do edytora kodu. Teraz w sekcji "type" zobaczysz cos takiego:


Button1 : TButton;


W sekcji "type" deklaruje się nazwy wszystkich komponentów zamieszczonych na formularzu. Słowo po lewej to nazwa komponentu. Można ja modyfikować według własnego uznania. Robisz to w Inspektorze Obiektów ( zaznaczony komponent, w Inspektorze Obiektów pole "Name" ).

Po prawej stronie zawarty jest typ komponentu ( w tym wypadku TButton ). Każdy typ komponentu poprzedzony jest litera "T" np. TMemo, TLabel, TRichEdit itp.

Po słowie "private" i "public" istnieje możliwość wpisywania własnych procedur. Omówię to w kolejnych rozdziałach. To wszystko, co znajduje się po słowie "type" to KLASA. Istnieje możliwość deklarowania własnych klas, ale tym zajmiemy się, kiedy indziej.

Słowo "Implementation" do sekcja, w której wypełnia się treść procedur. Przełącz się z powrotem do formularza ( F12 ). Kliknij dwukrotnie na przycisk. Co się stało? Zostałeś ponownie przeniesiony do edytora kodu? Ale cóż to? Nasz moduł się zmienił! Zauważ, ze w klasie powstała nowa linia:


  procedury ButtonClick(Sender: TObject);


Ta linia to PROCEDURA. Procedura to wydzielony kod, który wykonuje określoną czynność. Delphi ( jak zauważyłeś ) sam generuje procedury. Nazwa procedury poprzedzona jest słowem "procedury". Następnie nazwa komponentu, którego dotyczy. Później słowo "Click". Co one oznacz? Ano to, ze procedura ta wywoływana będzie podczas klikniecie na przycisk. Treść procedury wpisana została w sekcji "Implementation". Powinien być tam taki oto kod:


procedury TForm1.ButtonClick(Sender: TObject);
begin

end;


Słowo "begin" procedury rozpoczyna pisanie kodu. Po tym słowie będziemy wpisywać swoje komendy. Słowo "end" jest ostatnim parametrem procedury. A wiec miedzy tymi dwoma wyrazami wpisujemy swoje komendy. Na początek wpisz takie cos:


ShowMessage('Czesc! Jestem oknem. :) ');


To polecenie służy do wyświetlenia okna z informacja zawarta w apostrofach. Prawie każde polecenie ( jest parę wyjątków np. słowo "begin", "then" itp. ) kończyć się będzie znakiem średnika. Jeżeli zapomnisz go tam postawić Delphi zasygnalizuje Ci to podświetlając błąd. Jeżeli komenda jest jedna ( jak w powyższym przykładzie ) to brak średnika nic nie zmieni, ale gdyby było ich więcej wystąpiłby błąd.

Teraz możesz uruchomić program (F9). Gdy naciśniesz na przycisk pokaże się okienko z tekstem, który wpisałeś w apostrofach.

Zaznacz przycisk "Button". Spójrz teraz na Inspektor Obiektów. Wyświetlone są tam WLASCIWOSCI, które charakteryzują zachowanie komponentu. Omówię najważniejsze z nich:

- Caption - tekst, który wyświetlany jest na komponencie.

- Cursor - w tym polu znajduje się strzałka. Po jej naciśnięciu rozwinie się menu, z którego będziesz mógł wybrać kształt kursora, jaki będzie wyświetlany po najechaniu kursorem w obszar komponentu.

- Default - Te pole zawiera dwie wartości. Jeżeli nastawisz je na "True" to przycisk będzie domyślnie naciskany, jeżeli naciśniesz klawisz, ENTER.

- Enabled - jeżeli to pole będzie miało wartość "True" przycisk będzie nieaktywny. Sprawdź TO!

- Font - to pole zawiera właściwości czcionki użytej przy wyświetlaniu komponentu.

- Height - wysokość przycisku.

- Width - szerokość komponentu.

- Visible - jeżeli to pole zawiera wartość "True" komponent będzie niewidoczny podczas działania programu.


Zmienne


Zmienna jest to obszar pamięci, który śluzy do przechowywania jakiejś wartości. To była definicja, teraz sprawdźmy to w praktyce. Pamiętasz poprzednia procedury? Zmodyfikuj ja tak, aby wyglądała tak:


procedury TForm1.ButtonClick(Sender: TObject);
var
  MainName : String;
begin
  MainName := 'Adam Boduch';
  ShowMessage('Hej! Nazywam się ' + MainName);
end;


To już jest trudniejsze, prawda? Zmienne deklaruj się po słowie "var". Następnie wpisujesz swoja nazwę, wedle Twojego uznania. Następnie po znaku dwukropka wpisywany jest typ zmiennej. Typy omówię w dalszej części rozdziału. Powiem tylko, ze typ "String" to treść. Później po słowie "begin" następuje wypełnienie zmiennej, czyli przydzielenie jej pamięci. Przydzielenie zmiennej jakiejś wartości następuje po znaku przypisania " := ". Po tym znaku w apostrofach następuje wpisanie jakiegoś tekstu. W funkcji "ShowMessage" następuje połączenie treści ze zmienna. Czyli tak: wpisujemy tekst kończymy go apostrofem, a następnie łączymy ten tekst ze zmienna znakiem " + ". Teraz możesz uruchomić program. W okienku będzie widniał napis: "Hej! Nazywam się Adam Boduch".


Tak jak mówiłem wcześniej omówię najpopularniejsze typy zmiennych:

NazwaZakres
Byte0..255
Integer-2 147 483 648..2 147 483 647
Int64-9 223 372 036 854 775 808..9 223 372 036 854 775 807
Doublezmiennoprzecinkowy
Currencyzmiennoprzecinkowy
Word0..65 000
Char0..255

Typów tych istnieje dużo więcej, ja przedstawiłem tylko te najpopularniejsze. Najczęściej używanym typem do liczb będzie typ "Integer". Zapytasz pewnie:, "Po co mam używać typów "Byte", "Word", "Integer", jeżeli mam typ "Int64", który jest największy?". Dobre pytanie. Dla zaoszczędzenia pamięci. Taki typ "Byte" zajmuje w pamięci 1 bajt. Typ "Integer" 8 bajtów, a "Int64" 10 bajtow. Myślisz, ze to niedużo, ale jeżeli masz kilkadziesiąt (-kilkaset?) zmiennych to trzeba rozsądnie gospodarować pamięcią.

Zróbmy podobny przykład jak ostatnio tyle, ze użyjemy cyfr:


procedure TForm1.ButtonClick(Sender: TObject);
var
  MainName : String;
  Age : Integer;
begin
  MainName := 'Adam Boduch';
  Age := 21;
  ShowMessage('Hej! Nazywam się ' + MainName + ' i mam ' + IntToStr(Age) + ' lat');
end;


Przypisanie odbywa się tak samo jak w przypadku tekstu, z tym, ze do przypisania liczb nie używa się apostrof.

Omówienia wymaga funkcja "IntToStr". Otóż w funkcji "ShowMessage" tekst musi być typu "String", a jeżeli chcemy przypisać cyfrę? Z pomocą przychodzi właśnie funkcja "IntToStr", która konwertuje zmienna "Integer" na "String".


To by było na, tyle jeśli chodzi o podstawy Delphi. Zapraszam do przeczytania kolejnego rozdziału.

Jeżeli macie jakieś pytania, czegoś nie rozumiecie to śmiało piszcie: boduch@poland.com


Adam Boduch
e-mail: boduch@poland.com



Warez on-line - www.warezpl.com - First Warez Portal

 


Copyright 1999-2000 Magazyn internetowy NoName
Wszelkie prawa zastrzeżone