Kurs Delphi, PDF-y

[ Pobierz całość w formacie PDF ]
ROZDZIAŁ 1
JeŜelimaciejakieśdoświadczeniewprogramowaniuwTurboPascalutonapewnoprzyswojenie
materiałuztegorozdziałuprzyjdzieWamłatwiejniŜpozostałym.JeŜeliczegośnierozumiecie
piszcie:
programowanie@poczta.onet.pl
Przejdźciedonastępnychrozdziałówirozwiązujcieprzykłady.Zawszenajlepiejnowąwiedze
przyswoićwpraktyce!
PoniŜejprzedstawionyjestnowoutworzonymodułDelphi:
unitUnit1;
interface
uses
Windows,Messages,SysUtils,Classes,Graphics,Controls,Forms,Dialogs;
type
TForm1=class(TForm)
private
{Privatedeclarations}
public
{Publicdeclarations}end;
var
Form1:TForm1;
implementation
{$R*.DFM}
end.
WYJAŚNIENIE
Modułtopliktekstowy,którymoŜebyćkompilowanydoprogramuwykonywalnegotzn.kod
źródłowykompilowanyjestnajęzykzrozumiałydlamaszyny.Nazwamodułuwypisanajestw
pierwszejlinijcekoduipoprzedzonajestsłówkiemUnit(odang.Moduł).
Słowousesoznaczapocząteklistywktórejwypisanesąnazwywszystkichdodatkowychmodułów
któretozawartesąwnaszymmoduległównym.
Interface–potymzwrociewypisywanesąnazwywszystkichprocedur,funkcji,któremająbyć
widocznewnaszymmodule.Naprzykład:
unitUnit1;
 interface
proceduraMoja_procedura1;
implementaion
proceduraMoja_procedura;
begin
{treśćprocedury}
end;
end.
Słowoimplementationoznaczapoczątekprogramu;zatymsłowemwpisujemytreśćprocedur,
funkcjiitp.
MusiszpamiętaćokilkuwaŜnychsprawach:
KaŜdezdanie(pozakilkomawyjątkamijaknp.słówkobeginiend)kończymy
średnikiem.
KaŜdyprogramzakończonyjestsłowemend.(zkropkąnakońcu!)
PisaniekodunaleŜypoprzedzićsłowembegin.
WprogramachmoŜeszsięspotkaćzkomentarzami,którebędąnajczęściejw
nawiasachklamrowych({}).Niemająonewpływunadziałanieprogramu.
Słowotype
Deklarowanesątutajnowetypydanych.UmieśćnaformularzuprzyciskButton(napalecie
Standard;umieszczasięgoklikającpojedynczomysząanastępnienaformularzu).Przejedźteraz
doedytorakodu(naciśnijprzyciskF12).Zobaczysz,Ŝewsekcjitypepowstałanowalinia:
Button1:TButton;
Polewejstroniewypisanajestkomponentu(nazwęmoŜnamodyfikowaćwpoluNamew
InspektorzeObiektów),apoprawejtyp–wtymwypadkuTbutton.
Słowovar
SłuŜydodeklarowaniazmiennychwprogramie.SpójrznaponiŜszykod:
procedureMoja_procedura;
var
x:integer;{deklaracjazmiennej;patrztabelkaniŜej}
begin
x:=20;{przypisaniewrtościzminnejxliczby20}
Label1.caption:=inttostr(x);{wyświetleniewartościxjakonazwękomponentuLabel;inttostr
oznaczaprzekonwertowaniewartościIntegernawartośćString(patrzponiŜej)}
end;
Zakreswartościzmiennych
Integer
2147483648..2147483647
String
tekst
Byte
0..255
Boolean
TruealboFalse
Currency
9223372036854775808..9223372036854775807
Word
0..65535
WyŜejprzedstawiłemnajczęściejuŜywanetypyzmiennych.UniwersalnymtypembędzieInteger.
Inttostr–konwertujezmiennąIntegernaString
Strtoint–konwertujezmiennąStringnaInteger.
Słowoconst
Oznaczastałą.SpójrzponiŜej:
interface
const
name=’AdamBoduch’;{przypisaniewartościstałej–wtymwypadkudlaimieniaInazwiska}
implementation
procedureMoja_procedura;
begin
label1.caption:=name;{przypisaniekomponentowiLabeltekstuktóremuprzypisanajeststała:
name}
end;
WpowyŜszymprzypadkustałejmoŜeszuŜywaćwkaŜdejinnejprocedurze.
Pętlaif,then,else
Pętlaoznaczawarunek,którymusibyćspełniony,abyzadziałałkod,któryzawartyjestwjej
wnętrzu.Przykład:
ifx<20thenbegin{jeŜeliliczbajestmniejszaod20następujwczytaniewarunkuponiŜej,jeŜeli
nietowykonywanyzostajewarunekpowyraŜeniuelse}
ifx>10then
ifx=15then
Label1.caption:=’Tak,tąliczbąjest15!’;
endelse
label1.caption:=’Przykromi,toniejestprawidłowaliczba.’;
Warunekif,then,elsemoŜnaprzetłumaczyćjako:
JeŜeli{warunek,którymusizostaćspełniony}wtedy{kodprocedury},ajeŜelinieto{kod
procedury}
Pętlafor,to,downto
Działanietejpętlinajlepiejzrozumiećnaprzykładzie:
1.UmieśćnaformularzukomponentGauge(napalecieSamples)
2.UmieśćnaformularzuprzyciskButtonikliknijnańdwukrotnie.
3.Kodproceduryuzupełnijnastępująco:
procedureTForm1.Button1Click(Sender:TObject);
var
i:integer;
begin
fori:=0to100dobegin{odliczajdostupoczynającodzera,a...}
sleep(10);{...odstępmiędzyodliczaniemmawynieść10milisekund}
gauge1.progress:=i;{przypisaniekomponentowiwartośćiI}
end;
end;
4.Odpalprogram;
Downtodziałapodobnietyle,Ŝeodliczadodołuisłówkodowntowpisujemyzamiastto.
fori:=100downto0dobegin
{kod}
Pętlarepeat,until
Powtarzadanączynnośćdopókiniezostaniespełnionywarunekjejzakończenia.
i:=0;
repeat
memo.lines.add(‘Dzisiajjes’+inttostr(i)+’dzień’);
i:=i+1;
untili:=10;
Procedury
Jesttoblokkodu,którywykonujedanączynność:
Budowaprocedury:
procedureMoja_procedura(x:integer,y:integer)
begin
{treśćprocedury}
end;
Funkcje
Jesttoblokkodu,którywykonujedanączynnośćtyle,Ŝezwracawynik.
Budowafunkcji:
functionMoja_funkcja(x:integer,y:integer):integer;
begin
{treśćfunkcji}
end;
PODSUMOWANIE
Sorry,Ŝerozdziałtenopisałemtakkrótko.Zdajesobiesprawę,Ŝeniektórerzeczymogąwydaćsię
wamniezrozumiałe.Chętnieodpowiemnawszelkiepytania:
programowanie@poczta.onet.pl
WdalszychczęściachkursupostaramsiębardziejrozwinąćtematjęzykaObjectPascal.Rzeczy,
któretuopisałemsąpodstawąprzyprogramowaniu,aleoczywiścietoniejestwszystko,cooferuje,
Delphi.MoŜecieterazprzejśćdonastępnegorozdziału.
  [ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • psp5.opx.pl