12.07.2015 Views

Poglavlje 1 - Mikro knjiga

Poglavlje 1 - Mikro knjiga

Poglavlje 1 - Mikro knjiga

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

1UvodO programskom okruæeçu Delphi 2Uslovi za koriãñeçe Delphija 4Aplikacije pod Windowsom 5DRZ4, September 10, 2003 11:03 am01_DRZ7.fm, 1 str.


2 1 Uvod1.1 O programskom okruæeçu DelphiProgramsko okruæeçe Delphi firme Borland moñno je integrisano razvojno okruæeçe zaizradu aplikacija za rad pod operativnim sistemom MS Windows. Poseduje alatke za brzo i lakoorganizovaçe sprege aplikacija–korisnik sa svim elementima profesionalnih aplikacija za MSWindows. Programi za izvrãni deo aplikacije piãu se na programskom jeziku Object Pascal.Programski jezik Pascal nastao je krajem ãezdesetih godina dvadesetog veka kao odgovorna sve veñe probleme u vezi s projektovaçem i odræavaçem velikih programskih sistema,dotad koriãñenim tehnikama i jezicima za programiraçe. Projektovao ga je Niklaus Wirth,pobornik strukturiranog programiraça. Nazvao ga je po francuskom filozofu, matematiåaru ifiziåaru Blaiseu Pascalu (1623–1662), koji je, izmeœu ostalog napravio, jednostavnu maãinuza raåunaçe.Strukturirano programiraçe je skup tehnika za izradu programa jasne i lako razumàivestrukture, uz koriãñeçe podataka jasno definisanih struktura. Programski jezik Pascalpodræava te principe svojim osnovnim upravàaåkim strukturama (selekcije i ciklusi) i strukturiranimtipovima podataka (nizovi, zapisi, skupovi, datoteke). Za çega postoji i meœunarodni(ISO) standard.Standardni Pascal je jezik sa jednostavnom i logiånom strukturom i zbog toga se dostalako uåi. Vrlo je pogodan za poåetnike, za savlaœivaçe osnovnih principa programiraça,kao i za usvajaçe organizovanog i razumàivog naåina razmiãàaça i izraæavaça.Standardni Pascal, meœutim, ima nekoliko ozbiànih mana koje ga åine nepodesnim zapisaçe velikih programskih sistema.Pre svega, zahteva se da celokupan tekst izvornog programa, ukàuåujuñi sve potprograme,bude u jednoj datoteci. Osnovna zamisao je da se prevodiocu omoguñi da proveravaispravnost pozivaça potprograma. Jedna od najneprijatnijih vrsta greãaka u programima,koje se i vrlo teãko pronalaze u sloæenim programskim sistemima, upravo je neslagaçetipova stvarnih argumenata potprograma na mestima pozivaça sa tipovima formalnih argumenatau definiciji potprograma. Pored toga, ova mera je trebalo i da onemoguñi “pametne”programere da svesno navedu stvarne argumente drugaåijih tipova od oåekivanih, s nameromda postignu specijalne, nestandardne (i sumçive) efekte. Takvi programi se kose sa jednimod osnovnih principa strukturiranog programiraça – teãko ih je razumeti.Druga mana su vrlo ograniåene moguñnosti rada sa datotekama. Standardni Pascal predviœasamo sekvencijalne datoteke sa sekvencijalnim pristupom. Ne postoje relativne datotekes direktnim pristupom niti indeksne datoteke koje bi omoguñavale pristup pomoñu kàuåa. Dasituacija bude joã gora, imena datoteka koje program treba da obraœuje ne mogu da se birajutokom izvrãavaça programa, niti su ugraœena u sam program. Datoteke se u programimapredstavàaju simboliåkim imenima i prepuãteno je operativnom sistemu raåunara na koji ñenaåin ta imena povezati s fiziåkim datotekama. Na izbor datoteka korisnik, eventualno, moæeda utiåe komandama operativnog sistema pre poåetka izvrãavaça programa.Treña mana je nefleksibilnost potprograma pri radu s nizovima kao argumentima. Brojevielemenata nizova prilikom svakog pozivaça moraju da budu isti kao brojevi elemenatapredviœenih u definiciji potprograma. Åemu praviti jedan potprogram za sortiraçe nizova odpo 100 elemenata, a drugi za nizove od po 500 elemenata?Programski jezik Turbo Pascal firme Borland pojavio se na liånim raåunarima IBM-PCpod operativnim sistemom MS-DOS, s nekoliko nestandardnih proãireça. Neka od tih proãireçaobezbeœuju boàe iskoriãñavaçe hardverskih moguñnosti raåunara kome je jeziknameçen, dok druga otklaçaju nedostatke standardnog Pascala.DRZ4, September 10, 2003 11:03 am


1.1 O programskom okruæenju Delphi 3Da bi se boàe iskoristile hardverske moguñnosti raåunara, uvedeno je nekoliko formatacelobrojnih podataka i nekoliko formata realnih podataka, koji se meœusobno razlikuju poopsegu vrednosti i po taånosti izraåunavaça (standardni Pascal predviœa samo jednu vrstucelih i jednu vrstu realnih brojeva). Uvedeni su i specijalni operatori za manipulisaçebitovima unutar celobrojnih podataka.Potreba da se tekst celokupnog programskog sistema piãe u jednoj datoteci otkloçena jeuvoœeçem programskih modula. Ti moduli se prevode odvojeno i nazivaju se i jediniceprevoœeça (compilation units). Svaka datoteka programskog teksta je jedan modul i deli se nadeo za spregu sa ostalim delom sistema i deo za definisaçe sadræaja potprograma koji senalaze u çoj. U delu za spregu treba opisati sve potprograme (tip rezultata i tipove argumenata)i sve globalne promenàive, koji se koriste izvan te jedinice. Tokom prevoœeçadelova programa u kojima se koriste ti elementi, prevodilac ñe konsultovati delove za spreguradi provere ispravnosti koriãñeça tih potprograma i globalnih podataka. Mora se priznati,prevodilac se joã uvek moæe prevariti veãtim manipulacijama, ali znatno teæe nego u programskimjezicima koji su se koristili pre Pascala. Prevodiocu treba podmetnuti datoteku s laænimdelom za spregu, ãto u standardnom Pascalu nije moguñe.Rad s datotekama takoœe je poboàãan. Uvedena je moguñnost pridruæivaça simboliåkihimena fiziåkim datotekama u toku izvrãavaça programa. To, naravno, uvodi element zavisnostiprograma od raåunara i od operativnog sistema, ãto se izbegavalo u standardnom Pascalu.Pored toga, uvedena je i moguñnost direktnog pristupaça pojedinim zapisima udatotekama, bez åega ne postoji efikasna obrada datoteka.Dosad je objavàeno sedam verzija Turbo Pascala, neke åak s nekoliko modifikacija.Svaka nova varijanta je donela neke novine u odnosu na prethodnu: otklaçaçe uoåenihgreãaka i uvoœeçe novih moguñnosti u jezik. U najznaåajnija proãireça spadaju uvoœeçepodrãke za objektno orijentisano programiraçe (poåev od verzije 5.5) i podrãke za izraduatraktivnih sprega aplikacija sa korisnikom, zasnovanih na prozorima i menijima (TurboVision), pri radu pod operativnim sistemom MS-DOS.Objektno orijentisano programiraçe je nova metodologija izrade velikih programskihsistema koja se pojavila kada su programski sistemi toliko narasli da tehnike strukturiranogprogramiraça viãe nisu davale zadovoàavajuñe rezultate. Dok je u centru paæçe strukturiranogprogramiraça struktura programa, u centru paæçe objektno orijentisanog programiraçastoje objekti. Objekti su “inteligentni” podaci koji mogu da se nalaze u odreœenim staçima.Ta staça mogu da se promene primenom odreœenih metoda. Skup objekata sa istim osobinamaåini jednu klasu. Klase su analogne tipovima podataka, kao ãto su celi brojevi ili realnibrojevi, ali mogu da predstavàaju proizvoàno sloæene apstraktne objekte (na primer, geometrijskefigure).U posledçe vreme se sve åeãñe radi na liånim raåunarima IBM-PC pod operativnim sistemomMS Windows, pa se razvijaju brojne aplikacije za tu platformu. Kao odgovor na nastalepotrebe, firma Borland je 1995. godine objavila svoje programsko okruæeçe Delphi zaizradu aplikacija za rad pod operativnim sistemom MS Windows.Programsko okruæeçe Delphi sadræi vrlo moñne alatke za uobliåavaçe sprege aplikacija– korisnik u stilu profesionalnih aplikacija za tu platformu. Te alatke omoguñavaju vizuelnoureœivaçe pojedinih prozora (obrazaca) i podeãavaçe parametara komponenata u tim obrascima,tako ãto se komponente pomeraju po ekranu pomoñu miãa i popuçavaju se odgovarajuñiformulari. U tom delu posla nema nikakvog pisaça programa.DRZ4, September 10, 2003 11:03 am


4 1 UvodPostupci koje aplikacija treba da obavi kao odgovor na razne dogaœaje, kao ãto jepritiskaçe miãem nekog dugmeta u prozoru, programiraju se na jeziku Object Pascal.Object Pascal predstavàa daàe usavrãavaçe Turbo Pascala u domenu objektno orijentisanogprogramiraça. Ugraœena je i podrãka za neposredno koriãñeçe API funkcija, standardnogalata koji firma Microsoft nudi za izradu aplikacija za Windows. Programer uokruæeçu Delphi samo retko treba neposredno da poziva te API funkcije. Alati koje Delphipruæa uåiniñe to umesto çega.Poåev od verzije 7.0 Delphija jezik za pisaçe programa aplikacije se takoœe zove Delphi.Jezik Delphi je, u suãtini, Object Pascal sa neznatnim proãireçima. U ovoj kçizi, reå Delphiprvenstveno oznaåava programsko okruæeçe, koje u ãirem smislu obuhvata i jezik za programiraçe.Kada je vaæno, posebno je naglaãeno da li se misli na programsko okruæeçe kaoskup alatki za razvoj aplikacija ili na programski jezik za pisaçe programa aplikacije.1.2 Uslovi za koriãñeçe DelphijaVerzija 1.0 Delphija, koja je objavàena u proleñe 1995. godine, pravàena je za operativnisistem Windows 3.1x i nameçena je za izradu 16-bitnih aplikacija. Mogla je da se koristi i podoperativnim sistemima Windows 95 i Windows NT, ali nije mogla da iskoristi nove pogodnostikoje su pruæale ta nova, 32-bitna okruæeça. Rezultujuñe aplikacije su bile iskàuåivo 16-bitne,bez obzira na operativni sistem pod kojim se radilo. Te aplikacije su mogle da se izvrãavaju usvim pomenutim okruæeçima.Znatno preraœena verzija 2.0, koja je objavàena u februaru 1996. godine, pravàena je za32-bitna okruæeça. Mogla je da se koristi samo pod operativnim sistemima Windows 95 iWindows NT. Razvijene aplikacije su mogle da se izvrãavaju samo pod tim operativnim sistemima.Naravno, mogle su da se koriste sve pogodnosti tih okruæeça, kao ãto su novouvedenekomponente i uporedo izvrãavaçe programa u viãe niti (multithreading).Kasnije verzije Delphija, od kojih je posledça, verzija 7.0, objavàena 2002. godine, donelesu daàa poboàãaça, ali najveñi skok je napravàen izmeœu verzija 1.0 i 2.0. Od zanimàivijihnovina vredno je pomenuti poboàãanu pomoñ za pisaçe koda aplikacija, podrãku za rad prekoInterneta, izradu client-server aplikacija i drugih savremenih tehnologija programiraça.Karakteristika svih verzija Delphija je da generiãu pravi maãinski program (native code),ãto ubrzava izvrãavaçe aplikacija u odnosu na druga vizuelna okruæeça koja generiãu nekimeœukôd koji se posle izvrãava interpretacijom.Konaåan rezultat projektovaça je jedna datoteka sa izvodàivim oblikom (.exe) programakoji åini aplikaciju. Prilikom instalacije aplikacije, osim eventualnih datoteka koje koristi aplikacija,dodatne datoteke nisu potrebne (na primer, biblioteke sa dinamiåkim povezivaçem– .dll), pod uslovom da aplikacija ne koristi podrãku za rad sa bazama podataka i za izraduizveãtaja. Ako se koristi neka od tih podrãki, moraju takoœe da se instaliraju Borland DatabaseEngine, odnosno ReportSmith.Smeãtaçe celokupnog koda u izvodàivi oblik (.exe) programa ima nedostatak da i najmaçaaplikacija u Delphiju 7 zauzima barem 360 KB. Ako se na jednom raåunaru koristiviãe aplikacija koje su razvijene pomoñu Delphija, utroãiñe se mnogo prostora na disku.Zbog toga je u verziji 3.0 uvedena moguñnost pravàeça paketa s dinamiåkim povezivaçem(.dpl – Delphi Package Library) koji po nameni odgovaraju Windowsovim bibliotekama sdinamiåkim povezivaçem (.dll). Sama biblioteka vizuelnih komponenata isporuåuje se uobliku takvih paketa. Projektant aplikacije moæe da naznaåi koji ñe se od tih paketa ugraditiu izvodàiv oblik aplikacije, a koji ne. Naravno, korisniku aplikacije paketi koji nisu ugraœenimoraju da se isporuåe odvojeno.DRZ4, September 10, 2003 11:03 am


1.2 Uslovi za koriãñenje Delphija 5Za rad s verzijom 7.0 Delphija potreban je procesor barem Pentium/233 MHz i najmaçe64 MB operativne memorije (RAM). Da bi rad bio ugodniji, poæeàno je koristiti raåunar samemorijom od 128 MB. Neophodno je imati CD-ROM ureœaj, monitor najmaçe VGA rezolucijei miãa.Neophodno je imati operativni sistem Windows 98 ili noviji.Za minimalnu instalaciju potrebno je od 75 MB (Personal Edition) do 124 MB (ArchitectEdition) prostora na disku. Za potpunu instalaciju potreban prostor na disku je od 160 do 520MB, zavisno od izdaça.Veñi deo materije koja je predmet ove kçige moæe da se koristi u svim verzijama Delphija.Ilustracije u ovoj kçizi, kao i reãeça zadataka i primeri, raœeni su u verziji 7.0 Delphija podWindowsom 2000. Koriãñeni su sistemski fontovi za Sredçu i Istoånu Evropu.1.3 Aplikacije pod WindowsomAplikacije su programski sistemi projektovani za reãavaçe odreœenog problema.Osnovna odlika aplikacija pod operativnim sistemom MS Windows jeste sprega aplikacijei korisnika, zasnovana na prozorima i drugim vizuelnim komponentama kao ãto su: dugmad,okviri za tekst, meniji itd. Pomoñu tih komponenata korisnik upravàa radom aplikacijei prima informacije od aplikacije. Prozori mogu da se shvate kao okviri koji objediçujukomponente u logiåke celine.Svaka aplikacija ima barem jedan prozor koji se naziva glavni prozor (main window)aplikacije. Osim çega, moæe da postoji proizvoàan broj sekundarnih prozora (secondarywindows). Glavni prozor je obiåno stalno na ekranu, dok se sekundarni prozori pojavàuju inestaju sa ekrana prema trenutnim potrebama. Ima sluåajeva kada se i neki sekundarni prozoriduæe zadræavaju na ekranu.Po nameni, specijalnu vrstu sekundarnih prozora åine prozori za dijalog (dialog boxes).Koriste se za saopãtavaçe poruka korisniku i za prikupàaçe podataka od korisnika. Pozavrãetku dijaloga uvek nestaju sa ekrana. Prozori za dijalog su specifiåni i po tome ãto korisnik,sve dok ih ne zatvori, ne moæe niãta da uradi ni u kom drugom prozoru date aplikacije.Prozori sa tom osobinom nazivaju se uslovàeni (modal), jer je nastavak rada uslovàençihovim zatvaraçem. Po analogiji, ostali prozori se nazivaju i neuslovàeni (modeless).Kada se na ekranu nalazi uslovàeni prozor neke aplikacije, joã uvek moæe da se priœe prozorudruge aplikacije i da se neãto radi u çoj.Ako postoji viãe prozora u aplikaciji, oni se iscrtavaju jedan preko drugoga. Trenutnoaktivan prozor vidi se u celini, dok ostali mogu da budu delimiåno ili potpuno zakloçeni, uzavisnosti od çihovih veliåina i poloæaja na ekranu. Korisnik moæe pomoñu miãa da nezavisnopomera sve prozore po ekranu, meça im veliåinu ili ih uklaça sa ekrana.Postoji i specijalna vrsta prozora koji se nalaze unutar radnog prostora nekog drugog prozora.Ti prozori nazivaju se decom onih prozora u åijem se radnom prostoru nalaze. Prozori ukojima su drugi – deca – nazivaju se roditeàima te dece. Prozori deca mogu da se pomerajusamo unutar radnog prostora prozora roditeàa. Pomeraçem prozora roditeàa po ekranu,razume se, pomeraju se i çegova deca. Promenom veliåine prozora roditeàa, meœutim, nemeça se veliåina çegove dece. Ako posle promene veliåine prozora roditeàa u radni prostorne stanu prozori sve dece, pojaviñe se klizaåi uz ivice radnog prostora prozora roditeàa.Pomoñu tih klizaåa i miãa, korisnik ñe nevidàive prozore dece (ili çihove delove) moñi dadovede u vidno poàe.DRZ4, September 10, 2003 11:03 am


6 1 UvodSlika 1.1 prikazuje glavni prozor aplikacije WordPad, jedne od standardnih aplikacijakoje postoje pod Windowsom.Slika 1.1Glavni prozoraplikacije podWindowsom.Dugme upravàaåkog menijaDugme za zatvaraçe prozoraDugme za maksimiraçe prozoraDugme za minimiziraçe prozoraPodmeniTraka glavnog menijaTraka sa alatkamaTraka sa natpisomPokazivaå miãaStatusna trakaPokazivaå tekstaOsnovni naåin za upravàaçe aplikacijama pod Windowsom jeste koriãñeçe miãa (mouse).Mesto na ekranu na kome moæe da se deluje miãem obeleæava se pokazivaåem miãa (mousecursor). Pokazivaå miãa se grafiåki predstavàa na razne naåine. Osnovni oblik je strelica åijivrh oznaåava mesto pokazivaåa na ekranu. Alternativni oblici mogu da se koriste za oznaåavaçetrenutne uloge miãa. Na primer, iznad raznih okvira za tekst pokazivaå miãa obiånoima oblik tanke vertikalne linije s vodoravnim ispustima na gorçem i doçem kraju. Takavoblik je pogodan za oznaåavaçe mesta izmeœu dva znaka u tekstu.Miãem se mogu obavàati dve osnovne radçe:• Pritisak (click). Pod pritiskom miãem podrazumevaju se pomeraçe pokazivaåa miãaiznad odreœene komponente i pritisak i otpuãtaçe levog tastera miãa. Tako se naekranu moæe pritisnuti neko dugme, odabrati neka stavka u meniju, promeniti staçenekog okvira za potvrdu itd. i time dati signal aplikaciji.• Odvlaåeçe (drag and drop). Pod odvlaåeçem miãem podrazumeva se pomeraçe prozorapo ekranu ili promena veliåine prozora. Izvodi se tako ãto se pokazivaå miãadovede iznad natpisa prozora, pritisne se levi taster miãa, pomeri se pokazivaå miãa (uzpritisnuti levi taster) na neko drugo mesto i otpusti se taster miãa. Ako se na taj naåinmiãem uhvati ivica ili ugao prozora, pomeraçem pokazivaåa pomeriñe se ivica ili ugaosa susednim ivicama, åime se meça veliåina prozora. U zavisnosti od aplikacije, naovaj naåin ponekad mogu da se pomeraju neke komponente unutar prozora, moæe imse promeniti veliåina ili se postiæu drugi efekti.DRZ4, September 10, 2003 11:03 am


1.3 Aplikacije pod Windowsom1.3 Aplikacije pod Windowsom 7Osim miãem, radom aplikacije moæe se upravàati i preko tastature. Osnovna svrha tastatureje unoãeçe teksta u okvire za tekst. Mesto u tekstu na kome moæe neãto da se promeniobeleæava se pokazivaåem teksta (text cursor). To je obiåno jedna vertikalna trepñuña linijakoja se uvek nalazi izmeœu dva znaka u tekstu. Treba jasno razlikovati pokazivaå miãa odpokazivaåa teksta. Pokazivaå miãa moæe da se pomera pomoñu miãa po celom ekranu, dok sepokazivaå teksta pomera odgovarajuñim tasterima preko tastature (tasterima sa strelicamaitd.) samo unutar teksta. Pored toga, kada se miãem pritisne neka taåka okvira za tekst, pokazivaåteksta moæe da se premesti na trenutni poloæaj pokazivaåa miãa.Pod nekim uslovima, i preko tastature mogu da se proizvode efekti pritiska miãem. Za tose koriste tasteri sa slovima u kombinaciji sa tasterom Alt, kao i tasteri Enter i Esc. Za komponentukoja na ovaj naåin moæe da se pritisne kaæe se da joj je pridruæeno slovo preåica(accelerator character). Znakovi preåice prikazuju se podvuåeno u natpisima komponenatakojima su pridruæeni.Prozori Windowsa mogu da imaju sledeñe delove:• Traka s natpisom (caption bar). Nalazi se uz gorçu ivicu prozora. Sastoji se od natpisai do åetiri upravàaåka dugmeta. Natpis obiåno sadræi ime aplikacije i åesto joã iime datoteke koja se trenutno obraœuje. Åetiri moguña dugmeta su:1. Dugme upravàaåkog menija (control menu button). Nalazi se na levom kraju trakes natpisom i sadræi sliåicu (icon) pridruæenu prozoru. Pritiskom na to dugme otvarase upravàaåki meni. Uloga i naåin koriãñeça upravàaåkog menija objaãçeni sukasnije u ovom odeàku.2. Dugme za minimiziraçe prozora (minimize button). Pritiskom na to dugme, prozorili se ukloni sa ekrana pri åemu ostane dugme koje ga predstavàa na paleti poslova(task bar) u radnom prostoru (desktop) Windowsa ili se pretvara u minimalni oblik(tipiåno za sekundarne prozore za koje obiåno ne postoji pridruæeno dugme napaleti poslova). Dugme na paleti poslova sadræi sliåicu koja je pridruæena prozoru ideo natpisa prozora. Kada se to dugme pritisne levim tasterom miãa, prozor seponovo pojavi na ekranu u prvobitnoj veliåini i na prvobitnom mestu. Pritiskomdugmeta na paleti poslova desnim tasterom, otvara se upravàaåki meni. Minimalnioblik prozora se sastoji od skrañenog oblika trake sa natpisom. Sadræi sliåicu pridruæenuprozoru, deo natpisa i dugmad za vrañaçe u prvobitno staçe, maksimiraçei zatvaraçe. Pritiskom na sliåicu ili natpis otvara se upravàaåki meni, dok se pritiskomna neko od dugmadi postiæe ono åemu pritisnuto dugme sluæi. Ponovno prikazivaçeprozora u prvobitnoj veliåini i na prvobitnom mestu moæe da se postignei dvostrukim pritiskom na sliåicu ili tekst natpisa u minimalnom obliku prozora.3. Dugme za maksimiraçe prozora (maximize button). Pritiskom na to dugme, prozorpopuçava ceo ekran. Sâmo dugme meça izgled: sadræi dva delimiåno preklopàenapravougaonika koji simbolizuju preklopàene prozore na ekranu. Ponovnimpritiskom na to dugme prozor se vraña na prvobitno mesto u prvobitnoj veliåini.4. Dugme za zatvaraçe prozora (close button). Pritiskom na to dugme, prozor seukloni sa ekrana; ukloni se i pridruæeno dugme, ako postoji, iz palete poslova.Pritisne li se to dugme u glavnom prozoru, aplikacija se zavrãava.• Traka glavnog menija (menu bar). Nalazi se ispod trake s natpisom. Sadræi stavkeglavnog menija za izbor pojedinih grupa radçi koje aplikacija moæe da obavi. Trakaglavnog menija obiåno postoji samo u glavnom prozoru aplikacije. Mada aplikacija nemora sadræati menije, takve aplikacije se vrlo retko sreñu u praksi. Uloga i naåinkoriãñeça menija objaãçeni su malo daàe u ovom odeàku.DRZ4, September 10, 2003 11:03 am


8 1 Uvod• Traka sa alatkama (tool bar). Nalazi se ispod trake glavnog menija. Sadræi dugmad sasliåicama pomoñu kojih se najåeãñe koriãñene radçe lakãe izvrãavaju nego pomoñumenija.• Statusna traka (status bar). Nalazi se uz doçu ivicu prozora. Sadræi podatke o staçuaplikacije, ukàuåujuñi i kratka uputstva ili poruke korisniku.• Radni prostor (client area). Zauzima sav preostali prostor u prozoru. Tu se nalazevizuelne komponente koje su smeãtene u prozor. U posmatranom primeru (slika 1.1)ceo radni prostor popuçen je jednim viãerednim okvirom za tekst. Uz ivice tog okviramogu da se nalaze klizaåi pomoñu kojih se delovi teksta koji nisu stali u radni prostor,po potrebi, pomeraçem dovode u vidno poàe.Radom aplikacija upravàa se komandama pomoñu kojih mogu da se podeãavaju parametriobrade i da se traæi sprovoœeçe pojedinih radçi koje su predviœene u aplikaciji. Osnovninaåin zadavaça komandi je pomoñu menija (menu). Mada rad aplikacija moæe da se organizujei bez menija, takve aplikacije su vrlo retke u praksi.Meni sadræi niz stavki od kojih jedna moæe da se odabere da bi se naznaåila neka akcijaaplikacije. Da lista stavki ne bi bila predugaåka, stavke se grupiãu i obrazuju se meniji åijahijerarhijska struktura sadræi viãe nivoa. Prvi nivo stavki je glavni meni (main menu), åijestavke predstavàaju grupe moguñih operacija. Kada se izabere stavka glavnog menija,pojavàuje se podmeni (submenu) åije stavke mogu da predstavàaju konkretne operacije, ili,pak, daàe podmenije na sledeñem nivou. U praksi obiåno postoje dva nivoa menija. Stavkeglavnog menija gotovo nikad ne predstavàaju konkretne akcije. S druge strane, stavke podmenijasamo reœe ukazuju na potpodmenije.Stavke glavnog menija stalno se vide na traci glavnog menija, ispod trake s natpisom prozora(slika 1.1). Stavke podmenija prikazuju se samo za trenutno odabranu stavku glavnogmenija, poreœane uspravno ispod odgovarajuñe stavke glavnog menija. Eventualni potpodmenijiprikazuju se desno (reœe levo) od podmenija, sa vrhom u visini odgovarajuñe stavkepodmenija. Postojaçe potpodmenija oznaåava se strelicom u obliku popuçenog trougla uzdesnu ivicu podmenija.Trenutno odabrane stavke u meniju istiåu se drugom bojom podloge i slova u odnosu naostale stavke. Poãto stavke u razliåitim podmenijima mogu imati iste natpise, data stavka umeniju je jednoznaåno odreœena nizom stavki koje treba odabrati, poåev od glavnog menija,da bi se stiglo do te stavke. To se, obiåno, upravo tako i navodi, stavàaçem uspravne crte (|)izmeœu natpisa pojedinih stavki u nizu. Na primer, stavka Find u podmeniju Edit obeleæava sesa Edit | Find.Stavke glavnog menija i podmenija mogu se birati na viãe naåina:• Pritiskom na levi taster miãa, kada je pokazivaå miãa iznad æeàene stavke glavnogmenija ili podmenija.• Aktiviraçem glavnog menija pritiskom na taster Alt. Posle toga, tasterima → i ← moæese kretati po stavkama glavog menija, a tasterima ↓ i ↑ po stavkama trenutno aktivnogpodmenija (ispod trenutne istaknute stavke glavnog menija). Ako trenutno istaknutastavka podmenija ima svoj potpodmeni, on se otvara pritiskom na taster →. Vrañaçe naprethodni nivo podmenija postiæe se tasterom ←. Sam izbor, na kraju, ostvaruje sepritiskom na taster Enter kada je istaknuta odgovarajuña stavka podmenija.DRZ4, September 10, 2003 11:03 am


1.3 Aplikacije pod Windowsom 9• Istovremenim pritiskom tastera Alt i tastera podvuåenog slova u stavki glavnog menijaotvara se odgovarajuñi podmeni. Posle toga treba pritisnuti taster podvuåenog slova ustavki podmenija (sada taster Alt ne mora, ali moæe da bude pritisnut). Podvuåeni znakoviu natpisima stavki menija, kao i kod drugih komponenata, nazivaju se znakovipreåice. Ovaj naåin biraça obiåno se obeleæava sa Alt+E za otvaraçe podmenija Edit,odnosno sa Alt+E+E za zadavaçe komande Edit | Replace (izbor stavke Replace posleotvaraça podmenija Edit).Izborom komandi iza åijih se imena u podmeniju nalaze tri taåke (…) otvara se zasebanprozor za dijalog. Taj prozor sadræi obrazac åijim popuçavaçem treba da se zadaju podacineophodni za izvrãavaçe tih komandi. Na primer, u aplikaciji WordPad (slika 1.1), komandomEdit | Paste Special (skrañeno Alt+E+S) otvoriñe se prozor za dijalog koji je prikazan naslici 1.2.Slika 1.2Prozor zadijalog.Prozori za dijalog, pored komponenata za unoãeçe ili za izbor vrednosti potrebnih podataka,obiåno, sadræe joã i dva dugmeta: dugme OK (sve u redu), kojim se zahteva sprovoœeçezapoåete aktivnosti s trenutno vidàivim vrednostima u prozoru i dugme Cancel (odustani),kojim se odustaje od sprovoœeça te akcije. Osim miãem, dugme OK moæe da se pritisne ipomoñu tastera Enter na tastaturi (u sluåajevima kada je oiviåen pravougaonikom debàim odonog oko ostale dugmadi). Dugme Cancel uvek moæe da se pritisne i pomoñu tastera Esc natastaturi. Odustajaçe se postiæe i zatvaraçem prozora za dijalog pomoñu upravàaåkogmenija ili pritiskom miãem dugmeta za zatvaraçe prozora.Ponekad prozor za dijalog sluæi samo da bi korisnik potvrdio da stvarno æeli sprovoœeçeodabrane aktivnosti. Time mu se pruæa joã jedna prilika za eventualno odustajaçe. Takviprozori za dijalog obiåno sadræe odgovarajuñe pitaçe i dugme Yes (da) i No (ne). Njihovauloga i naåin odabiraça analogna je dugmadi OK i Cancel.Pored navedenih, prozori za dijalog åesto sadræe i dugme Help (pomoñ). Pritiskom na todugme dobija se prigodna priruåna pomoñ.Za aktiviraçe nekih radçi aplikacija, predstavàenih odgovarajuñim stavkama podmenija,mogu da postoje i tasteri preåice (shortcut keys). Za razliku od znakova preåica, pomoñu kojihse po meniju kreñe korak po korak, kao i pomoñu miãa, pritiskom na taster preåicu, stavkamenija kojoj je on pridruæen aktivira se u jednom potezu. Pri tom se meni ne otvara i odabranastavka se uopãte ne vidi na ekranu. Ne smeta, ako je u trenutku pritiska na taster preåicu uotvorenom meniju istaknuta bilo koja stavka, ukàuåujuñi i stavku koja se çime bira.Tasteri preåice mogu da budu funkcijski tasteri od F1 do F12, sami ili u kombinaciji saupravàaåkim tasterima Shift, Alt i/ili Ctrl, kao i tasteri sa slovima ili ciframa u kombinaciji saDRZ4, September 10, 2003 11:03 am


10 1 Uvodupravàaåkim tasterima Ctrl, Alt i/ili Shift (najåeãñe se koristi taster Ctrl, sâm taster Alt reœe, asâm taster Shift nikada). Postojaçe tastera preåice oznaåava se uz desnu ivicu menija, poslenatpisa stavke menija. Na primer, komanda Edit | Find Next u aplikaciji WordPad (slika 1.1) imataster preåicu F3, a komanda Edit | Paste taster preåicu Ctrl+V.Za razliku od znakova preåica, åije tumaåeçe moæe da se meça u toku izvrãavaçaaplikacije, tumaåeçe tastera preåica je jedinstveno u toku celog izvrãavaça aplikacije.Pored eventualnog glavnog menija (s prateñim podmenijima) svaki prozor sadræi upravàaåkimeni (control menu) koji se naziva i sistemski meni (system menu). Upravàaåki meni(slika 1.3) aktivira se pritiskom na dugme upravàaåkog menija na levom kraju trake sa natpisomprozora (slika 1.1).Slika 1.3Upravàaåkimeni prozora.Pomoñu upravàaåkog menija, prozor moæe da se minimizira (Minimize), da se maksimira(Maximize), da mu se povrati prethodna veliåina (Restore), da se pomera po ekranu (Move), damu se promeni veliåina (Size) i da se zatvori (Close). Sve to moæe da se postigne i na druginaåin, pa je otvaraçe upravàaåkog menija retko potrebno. Promena veliåine i poloæaja prozoraspomenuta je veñ ranije u ovom odeàku, a sa slike se vidi da posledça radça ima svojtaster preåicu. Pored toga, zatvaraçe prozora moæe da se postigne i dvostrukim pritiskomdugmeta upravàaåkog menija.Postoje, doduãe retke, aplikacije åiji upravàaåki meni sadræi i druge stavke. Obiåno su tovrlo specifiåne male aplikacije koje åesto i nemaju drugi meni osim upravàaåkog. Nekadnemaju ni glavni prozor, veñ samo sliåicu glavnog prozora.Prozori, a naroåito prozori za dijalog, pored menija sadræe i razne komponente pomoñukojih korisnik moæe da utiåe na tok izvrãavaça aplikacije. Najåeãñe se koriste (slika 1.4):Slika 1.4Najåeãñekoriãñenekomponente.• Oznaka (label). Prikazuje tekst (natpis oznake) koji moæe da bude neka poruka korisnikuili opis namene druge komponente. Korisnik ne moæe da deluje na oznakepomoñu miãa.• Dugme (button). Korisnik moæe miãem da ga pritisne i time dâ signal za neku akciju.Natpis na dugmetu oznaåava çegovu namenu. Unoãeçe podataka u prozore za dijalogobiåno se zavrãava pritiskom na jedno od dugmadi.DRZ4, September 10, 2003 11:03 am


1.3 Aplikacije pod Windowsom 11• Okvir za tekst (edit box). Korisnik u ovaj okvir moæe da unese proizvoàan tekst prekotastature. Postoje okviri koji mogu da sadræe samo jedan red teksta i okviri koji moguda sadræe viãe redova teksta.• Okvir za potvrdu (check box). Mali kvadrat pored natpisa ovog okvira moæe da sadræiznak za potvrdu (✓) ili da bude prazan. Prisustvo znaka za potvrdu oznaåava da osobinau natpisu vaæi, a odsustvo da ne vaæi. Kada se pritisne miãem, promeni svojestaçe iz nepotvrœenog u potvrœeno i obrnuto.• Radio-dugme (radio button). Mali krug pored natpisa ove komponente moæe da sadræicrnu taåku ili da bude prazan. Koristi se u grupama s tim da samo jedno dugme u grupimoæe da ima popuçen kruæiñ. Te grupe se koriste za izbor jedne od nekoliko, meœusobnoiskàuåivih, moguñnosti.Sliåno stavkama menija, natpisi mogu da sadræe znakove preåice (prikazane podvuåeno)koji omoguñavaju pristup komponentama preko tastature (istovremenim pritiskom na tasterAlt i taster podvuåenog znaka).Neke od komponenata u prozoru ili neke stavke menija mogu da budu privremeno neupotrebàive.Takve komponente obiåno se prikazuju bledo (dimmed).Svakog trenutka samo je jedan od trenutno vidàivih prozora na ekranu aktivan. Za takavprozor se kaæe da je u æiæi (has focus). Od ostalih prozora vidàivo se razlikuje po drugaåijojboji trake sa natpisom prozora i teksta u çoj. Korisnik moæe da aktivira prozore po proizvoànomredosledu (osim ako je trenutno aktivan prozor uslovàeni prozor za dijalog) prostimpritiskom miãem na bilo koju taåku koja pripada æeàenom prozoru.U trenutno aktivnom prozoru, svakog trenutka je aktivna samo jedna komponenta. Za tukomponentu se kaæe da je u æiæi. Komponenta koja je u æiæi, obiåno se vidàivo razlikuje oddrugih komponenata iste vrste. Tri su karakteristiåne razlike: natpis komponente je uokvirenpravougaonikom od tanke isprekidane linije, pokazivaå teksta trepñe unutar okvira za tekstili uokvirena je jedna od stavki (kao i kod dugmadi) unutar okvira sa listom.Pritiskom neke komponente miãem ili odabiraçem pomoñu znaka preåice, æiæa se pomerina tu komponentu. Pored toga, æiæa moæe da se pomeri s jedne komponente na drugu premaodreœenom redosledu, pritiskaçem tastera Tab na tastaturi, odnosno kombinacije tasteraShift+Tab po obrnutom redosledu. Redosled pomeraça æiæe s komponente na komponentu naovaj naåin zavisi od aplikacije.U dobro projektovanoj aplikaciji redosled pomeraça æiæe sledi logiåan tok unoãeça podataka,primeren datoj situaciji. Takoœe, u dobrim aplikacijama komponente su tako rasporeœeneda logiåan redosled çihovog obilaska na ekranu bude sleva udesno i odozgo nadole.Sve aplikacije pod Windowsom mogu da se podele u dve grupe:• Aplikacije sa spregom za jedan dokument (Single Document Interface Applications– SDI aplikacije). Mogu istovremeno da obraœuju samo jedan dokument (tekst, slikuitd.). U glavnom prozoru se obraœuje jedan dokument (tekst, slika ili drugi skup podataka)a eventualni ostali prozori u aplikaciji sluæe samo kao podrãka za ostvarivaçe teobrade. Svi su prozori obiåni, u smislu da meœu çima nema prozora roditeàa niti prozoradece.DRZ4, September 10, 2003 11:03 am


12 1 Uvod• Aplikacije sa spregom za viãe dokumenata (Multiple Document Interface Applications– MDI aplikacije). Mogu odjednom da obraœuju viãe dokumenata. Glavni prozorje prozor roditeà koji sadræi barem jedan prozor dete. Svaki prozor dete sadræi po jedandokument koji se obraœuje u aplikaciji. Aplikacija moæe da ima i izvestan broj obiånihprozora koji sluæe kao podrãka za obradu dokumenata. Pojedinim radçama u aplikacijideluje se na dokument u prozoru detetu koji je tog trenutka aktivan.U grupu SDI aplikacija spadaju veñ pomenuti WordPad, kao i Paint, Delphi i drugi. UWordPadu i Paintu dokument je tekst ili slika koji se obraœuje, dok je u Delphiju aplikacijakoja se projektuje.U grupu MDI aplikacija spadaju CorelDRAW, Microsoft Word, Adobe Photoshop i drugi.Aplikacije pod Windowsom imaju u velikoj meri ujednaåen stil ureœivaça sprege sa korisnikom.To olakãava upoznavaçe novih aplikacija i istovremeno koriãñeçe velikog brojaaplikacija.Pre svega treba spomenuti ujednaåeni izgled prozora, naåin koriãñeça miãa i tastature, kaoi zadavaçe komandi preko menija. Glavni meni takoœe je ureœen po ustaàenim pravilima.Na prvom mestu obiåno je podmeni File (datoteka) koji sadræi komande za rad s datotekamaako aplikacija obraœuje datoteke (uobiåajene komande: New – nova, Open – otvori,Save – snimi i Save As – snimi kao), komande za ãtampaçe i za podeãavaçe ãtampaåa, ako jeu aplikciji predviœeno ãtampaçe (uobiåajena komanda: Print – ãtampaj) i komanda Exit zazavrãetak aplikacije. U aplikaciji koja obraœuje datoteke, ovaj podmeni åesto sadræi imenaposledçih nekoliko obraœivanih datoteka åime se ubrzava ponovno otvaraçe.Ako je primereno, drugi podmeni je Edit (uredi) za razne operacije ureœivaça. Kao gotovoobavezne operacije tu se nalaze Undo, za poniãtavaçe efekta posledçe komande, kao i Cut(iseci), Copy (kopiraj) i Paste (umetni) za rad sa Clipboardom Windowsa.Sledeñi podmeniji mogu biti Search (pretraæi) za razna pretraæivaça i View (prikaæi) zapodeãavaçe ãta se sve vidi na ekranu (razne palete, leçiri itd.).Posledçi podmeni obiåno je Help (pomoñ) za pokretaçe sistema priruåne pomoñi.Najåeãñe komande su Contents (sadræaj), za prikazivaçe oblasti tema o kojima moæe da sedobije priruåna pomoñ i About (o aplikaciji), za prikazivaçe opãtih informacija o aplikaciji(ime i verzija aplikacije, autor, nosilac autorskih prava itd.).U MDI aplikacijama pretposledçi podmeni obiåno je Window (prozor); sluæi za upravàaçeprozorima decom unutar radnog prostora glavnog prozora (roditeàa). Meœu komandamaovog podmenija obiåno su New Window, za obrazovaçe novog prozora, kao i komandeza rasporeœivaçe prozora dece po radnom prostoru glavnog prozora. Pored toga, ovaj podmeniobiåno sadræi spisak postojeñih prozora dece. Pomoñu tih stavki mogu da se aktivirajupojedini prozori deca, naroåito ako jedan od çih pokriva ceo radni prostor glavnog prozora.U aplikacijama za Windows postoje i ustaàeni tasteri preåice: F1 – Help | Contents, Ctrl+O – File| Open, Ctrl+S – File | Save, Ctrl+P – File | Print, Ctrl+X ili Shift+Del – Edit | Cut, Ctrl+C ili Ctrl+Ins – Edit |Copy, Ctrl+V ili Shift+Ins – Edit | Paste, Ctrl+Z – Edit | Undo, Alt+F4 – Close (u upravàaåkom meniju).Pored toga, u aplikacijama za obradu teksta, Ctrl+B obiåno sluæi za naizmeniåno ukàuåivaçe iiskàuåivaçe prikazivaça teksta polucrno (bold), Ctrl+I kurzivom (italic), a Ctrl+U podvuåeno(underlined).DRZ4, September 10, 2003 11:03 am


1.3 Aplikacije pod Windowsom 13Poãto nije uobiåajeno da se neka akcija pokreñe izborom stavke glavnog menija, u retkimsluåajevima kada se to ipak deãava, korisniku se skreñe paæça dodavaçem znaka uzvika (!)na kraju natpisa stavke. To je znak da ñe se neãto trenutno desiti, bez moguñnosti odustajaça.U sluåajevima kada sledi otvaraçe podmenija ili prozora za dijalog, korisnik ima priliku da sepredomisli.Stavke podmenija, koje umesto tipiånog trenutnog sprovoœeça akcije otvaraju prozor zadijalog, obiåno se oznaåavaju dodavaçem tri taåke (...) na kraju natpisa (slika 1.1). Time sekorisniku daje do znaça da ñe imati priliku da eventualno odustane od zapoåete aktivnosti.Dodavaçe znaka uzvika ili tri taåke na kraju natpisa uobiåajena je praksa, ali nijeobavezno. Moæe se desiti da se projektant aplikacije ne dræi ovih pravila.Ranije pomenuto navoœeçe postojaça tastera preåice iza natpisa stavke menija, barem usluåaju Delphija, ne moæe da se zaobiœe.Postupak izrade aplikacije naziva se projektovaçe, a predmet tog postupka projekataplikacije, ili skrañeno, samo projekat. Drugim reåima, projekat aplikacije predstavàaaplikaciju u fazi izrade ili projektovaça.Skica prozora (window) tokom projektovaça aplikacije zove se obrazac (form). Shodnotome, skica glavnog prozora za vreme projektovaça naziva se glavni obrazac projekta.Delphi je aplikacija Windowsa i koristi se na opisani naåin. Istovremeno, sluæi za izraduaplikacija za Windows. Preporuka projektantima je da se trude da svoje aplikacije ãto viãeuklope u opisanu ãemu. Time poveñavaju izglede da çihov proizvod rado prihvate buduñikorisnici.Delphi u potpunosti podræava i potpomaæe projektovaçe standardnih i atraktivnih aplikacijaza Windows.DRZ4, September 10, 2003 11:03 am

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!