02 - razvijanje aplikacije u visual basicu
TRANSCRIPT
2. P O G L A V L J E
Razvijanje aplikacije u Visual Basicu
Potrebno je samo nekoliko minuta za stvaranje va{e prve Visual Basic aplikacije. Naj-prije trebate stvoriti korisni~ko su~elje “povla~enjem” kontrola na formu kao {to suokviri s tekstom i naredbeni gumbi. Sljede}i korak je odre|ivanje svojstava forme ikontrole kojima }ete odrediti vrijednosti kao sadr`aj, boja i veli~ina. Na kraju, potreb-no je napisati programski kod koji }e o`ivjeti aplikaciju. Osnovni koraci koje }etepoduzeti pri stvaranju prve aplikacije pokazat }e vam na~ela koja }ete koristiti prirazvojima sljede}ih aplikacija.
Ovo poglavlje pru`a pregled postupka razvijanja aplikacije, opisuje termine i vje{tinekoje trebate za kori{tenje Visual Basica, i vodi vas korak po korak kroz nekoliko jed-nostavnijih aplikacija.
Sadr`aj• Pojmovi Visual Basica
• Elementi ugra|ene razvojne okoline
• Va{a prva Visual Basic aplikacija
Primjer aplikacije: Firstapp.vbpNeki primjeri programskog koda u ovom poglavlju preuzeti su iz primjera aplikacijeFirstapp.vbp ~iji ispis je dan u direktoriju Samples.
Pojmovi Visual BasicaZa razumijevanje postupka razvijanja aplikacije, korisno je razumjeti neke klju~nezamisli na temelju kojih je kreiran Visual Basic. Budu}i da je Visual Basic programskijezik za Windows okru`enje, nu`na je sli~nost s Windows okolinom. Ako ste po~etniku Windows programiranju, trebate biti svjesni nekih temeljnih razlika izme|u pro-gramiranja pod Windowsima u usporedbi s drugim okru`enjima.
Vodi~ za programere 11
Kako Windowsi rade: prozori, doga|aji iporukeKompletna rasprava o sustavu rada Windowsa zahtijevala bi cijelu knjigu. Potpuno ra-zumijevanje svih tehni~kih detalja nije potrebno. Pojednostavljena verzija rada Win-dows operativnog sustava uklju~uje tri osnovna pojma: prozore, doga|aje i poruke.
Shvatite prozor jednostavno kao pravokutno podru~je s vlastitim granicama. Vjero-jatno ste ve} upoznali nekoliko razli~itih vrsta prozora: prozor Explorera u Windowsi-ma, prozor s dokumentom u va{oj aplikaciji za obradu teksta ili dijalo{ki okvir koji sepojavljuje da vas podsjeti na neki sastanak. Iako su to naj~e{}i primjeri, zapravo posto-ji puno drugih vrsta prozora. Naredbeni gumb je prozor. Ikone, okviri s tekstom, gum-bi izbora i trake s izbornicima su tako|er prozori.
Operativni sustav Microsoft Windows upravlja mno{tvom tih prozora dodjeljuju}i sva-kome od njih jedinstven identifikacijski broj (window handle ili hWnd). Sustav nepre-kidno prati svaki od tih prozora tra`e}i znakove aktivnosti ili doga|aja. Doga|aji semogu pojaviti zahvaljuju}i akciji korisnika kao {to je klik mi{em ili pritisak na tipku,tijekom programirane kontrole, ili ~ak kao rezultat akcije nekog drugog prozora.
Svaki put kad se pojavi doga|aj, uzrokuje poruku koja se {alje operativnom sustavu.Sustav obra|uje poruku i proslje|uje je drugim prozorima. Svaki prozor zatim mo`epoduzeti odgovaraju}u akciju temeljenu na vlastitim uputama kako bi obradio tu odre-|enu poruku (na primjer, ponovno se iscrtati ako je bio pokriven drugim prozorom).
Kao {to pretpostavljate, obrada svih mogu}ih kombinacija prozora, doga|aja i porukamo`e biti pravo optere}enje. Na sre}u, Visual Basic vas osloba|a potreba baratanjasvim manje va`nim porukama. Ve}inu poruka Visual Basic obra|uje automatski; ostalevam se daju na znanje kao Event postupci. To vam omogu}uje brzo stvaranje mo}nihaplikacija bez potrebe za obradom nebitnih detalja.
Razumijevanje modela upravljanogdoga|ajimaU uobi~ajenim ili “proceduralnim” aplikacijama, sama aplikacija kontrolira po kojemredu }e se izvesti pojedini dijelovi programskog koda. Izvo|enje zapo~inje prvom lini-jom programskog koda i slijedi unaprijed odre|enu putanju kroz aplikaciju, pozivaju}ipotprograme kad je potrebno.
U aplikaciji upravljanoj doga|ajima, programski kod ne slijedi unaprijed odre|enuputanju - takve aplikacije izvode razli~ite dijelove programskog koda kao odgovor nadoga|aje. Doga|aji mogu biti pokrenuti akcijom korisnika, porukama sistema ilidrugih aplikacija, ili ~ak same aplikacije. Redoslijed tih doga|aja odre|uje putanjukojom }e programski kod biti izveden, pa je putanja izvo|enja kroz programski koddruga~ija svaki put kad se aplikacija pokrene.
1. dio Temelji Visual Basica
12 Vodi~ za programere
Budu}i da ne mo`ete predvidjeti redoslijed doga|aj, va{ programski kod mora poduze-ti neke pretpostavke o “op}em stanju” kad se po~ne izvoditi. Kad pretpostavite nekestvari (na primjer, da prazno polje mora sadr`avati neku vrijednost prije pokretanja po-stupka koji }e tu vrijednost obraditi), trebate sastaviti svoju aplikaciju tako da budetesigurni da }e ta pretpostavka uvijek biti ostvarena (na primjer, onemogu}avanje na-redbenog gumba koji pokre}e postupak sve dok polje za upis podatka ne sadr`i nekuvrijednost).
Tijekom izvo|enja va{ programski kod mo`ete pokrenuti i neke doga|aje. Na primjer,programirana promjena teksta u okviru s tekstom uzrokovat }e pokretanje Change svo-jstva. Ako pretpostavite da }e taj doga|aj pokrenuti samo akcija korisnika, mo`ete vid-jeti neo~ekivane rezultate. Zbog toga je potrebno razumjeti model pokretanjadoga|ajima i imati to na umu tijekom razvoja vlastite aplikacije.
Interaktivno okru`enjePostupak razvijanja uobi~ajenih aplikacija mo`e biti rastavljen na tri razli~ita koraka:pisanje, prevo|enje i ispitivanje programskog koda. Za razliku od tradicionalnih pro-gramskih jezika, Visual Basic koristi interaktivni pristup razvoju, smanjuju}i razlikeizme|u ova tri koraka.
Kod ve}ine programskih jezika, ako napravite pogre{ku u pisanju programskog koda,nju }e otkriti prevoditelj (compiler) kad zapo~nete prevo|enje aplikacije. Nakon togatrebate prona}i i ispraviti pogre{ku i ponovno zapo~eti s prevo|enjem, ponavljaju}i tajpostupak za svaku prona|enu pogre{ku. Visual Basic prevodi va{ programski kod dokga upisujete, hvataju}i i ozna~uju}i u hodu sve sintaksne ili pravopisne pogre{ke. To jeskoro kao da imate stru~njaka iza le|a dok unosite programski kod.
Osim otkrivanja pogre{aka u hodu, Visual Basic tako|er djelomi~no prevodi programs-ki kod za vrijeme upisivanja. Kad ste spremni pokrenuti i ispitati svoju aplikaciju,potrebno je vrlo malo vremena do kraja prevo|enja. Ako prevoditelj prona|e pogre{ku,ona }e biti ozna~ena u programskom kodu. Pogre{ku mo`ete odmah ispraviti i nastavi-ti s prevo|enjem bez potrebe pokretanja cijelog postupka ispo~etka.
Zbog interaktivne prirode Visual Basica, ~esto }ete pokretati svoju aplikaciju dok jupi{ete. Na taj na~in mo`ete isprobati efekte programskog koda za vrijeme rada {to jebolji izbor od ~ekanja na prevo|enje na kraju programiranja.
Elementi ugra|ene razvojne okolineRadna okolina Visual Basica se ~esto ozna~uje kao ugra|ena razvojna okolina (inte-grated development environment, IDE) jer objedinjuje puno razli~itih funkcija kao {tosu oblikovanje, ure|ivanje, prevo|enje i ispravljanje pogre{aka u poznatom okru`enju.Kod ve}ine uobi~ajenih razvojnih alata, svaka od tih funkcija bila bi izvo|ena kaoposebna aplikacija, svaka sa svojim su~eljem.
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 13
Pokretanje Visual Basic razvojne okolineKad pokrenete Setup aplikaciju Visual Basica, ona vam omogu}uje postavljanje dijelo-va Visual Basica u ve} postoje}u programsku grupu ili kreiranje nove programske gru-pe i pre~ica za Visual Basic u Windowsima. Nakon toga mo`ete po~eti rad u VisualBasicu iz Windowsa.
Kako pokrenuti Visual Basic iz Windowsa
1. Kliknite gumb Start na traci sa zada}ama.
2. Odaberite grupu Programs, te zatim Microsoft Visual Basic 6.0.
– ili –
Kliknite na gumb Start.
Odaberite grupu Programs.
Iskoristite Windows Explorer za pronala`enje izvr{ne datoteke Visual Basica.
3. Dvaput kliknite na ikonu Visual Basic.
Tako|er mo`ete kreirati pre~icu do Visual Basica, i dvoklikom je pokrenuti.
Kad prvi put pokrenete Visual Basic, vidjet }ete su~elje ugra|ene razvojne okoline,kako je prikazano na slici 2.1.
Slika 2.1 Ugra|ena razvojna okolina Visual Basica
1. dio Temelji Visual Basica
14 Vodi~ za programere
Traka s izbornicima
Alatna traka
Alatni okvir
Oblikovatelj forme
Projektni prozor
Prozor sa svojstvima
Elementi ugra|ene razvojne okolineUgra|ena razvojna okolina Visual Basica (IDE) sastoji se od sljede}ih elemenata.
Traka s izbornicima (Menu Bar)Sadr`i naredbe koje koristite tijekom rada s Visual Basicom. Osim uobi~ajenih izborni-ka File, Edit, View, Window i Help, izbornici omogu}uju pristup funkcijama speci-fi~nim za programiranje kao {to su Project, Format ili Debug.
Pomo}ni izbornici (Context Menus)Sadr`e pre~ice do ~esto izvo|enih akcija. Za otvaranje pomo}nog izbornika, kliknitedesnom tipkom mi{a na objekt koji koristite. Specifi~na lista pre~ica dostupna iz takootvorenog izbornika ovisi o dijelu su~elja na koji ste kliknuli desnom tipkom mi{a. Naprimjer, pomo}ni izbornik koji }ete dobiti desnim klikom na alatni okvir omogu}it }evam poziv dijalo{kog okvira za prikaz sastavnih dijelova, sakrivanje alatnog okvira,sidrenje alatnog okvira ili dodavanje nove kartice u alatni okvir.
Alatne trake (Toolbars)Omogu}uju brz pristup obi~no kori{tenim naredbama u razvojnom okru`enju. Potreb-no je kliknuti jednom na gumb na alatnoj traci za pokretanje akcije predstavljene timgumbom. Kao standardna postava pri pokretanju Visual Basica prikazana je alatnatraka Standard. Dodatne alatne trake za ure|ivanje, oblikovanje forme i ispravljanjepogre{aka mogu biti uklju~ene ili isklju~ene preko naredbe Toolbars u izborniku View.
Alatne trake mogu biti usidrene ispod trake s izbornicima ili mogu “lebdjeti” ako oda-berete okomitu traku na lijevom rubu alatne trake i odvu~ete je trake s izbornicima.
Alatni okvir (Toolbox)Pru`a niz alata koje koristite pri stvaranju za postavljanje kontrola na formu. Kaododatak standardnom izgledu alatnog okvira, mo`ete kreirati vlastite dodatne karticeodabirom stavke Add Tab iz pomo}nog izbornika te postaviti kontrole nanovodobivenu karticu.
Za vi{e informacija Ako `elite nau~iti vi{e o odre|enim kontrolama, pogledajte 3.poglavlje “ Forme, kontrole i izbornici” i 7. poglavlje “Kori{tenje standardnih kontrolaVisual Basica”. Za informacije kako dodati kontrole u alatni okvir, pogledajte “Doda-vanje kontrola u projekt” u 4. poglavlju “Upravljanje projektima”.
Projektni prozor (Project Explorer Window)Sadr`i popis svih forma i modula u va{em trenutnom projektu. Projekt je skup datote-ka koje koristite za izgradnju aplikacije.
Za vi{e informacija Za informacije o projektima pogledajte 4. poglavljeUpravljanje projektima”.
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 15
Prozor sa svojstvima (Properties Window)Sadr`i popis svih svojstava za odabranu kontrolu ili formu. Svojstvo je osobina objek-ta, kao veli~ina, sadr`aj ili boja.
Za vi{e informacija Za informacije o svojstvima pogledajte “Tuma~enje svojstava,postupaka i doga|aja” u 3. poglavlju “ Forme, kontrole i izbornici”
Pretra`iva~ objekata (Object Browser)Ispisuje objekte dostupne za kori{tenje u va{em projektu i omogu}uje vam brzo upra-vljanje kroz programski kod. Pretra`iva~ objekata mo`ete iskoristiti za istra`ivanjeobjekata u Visual Basicu i drugim aplikacijama, mo`ete vidjeti koji postupci i svojstvasu dostupni za te objekte, te mo`ete iskopirati dijelove programskog koda u va{uaplikaciju.
Za vi{e informacija Za vi{e informacija o kori{tenju pretra`iva~a objekata za pre-gled potprograma, pogledajte “Odgonetavanje objekata” u 9. poglavlju “Programiranjeobjektima”. Za detalje o kori{tenjima dodataka za pro{irenje razvojne okoline VisualBasica, pogledajte “Kori{tenje ~arobnjaka i dodataka” u 4. poglavlju “Upravljanje pro-jektima”.
Oblikovatelj forme (Form Designer)Slu`i kao prozor kojeg prilago|avate pri oblikovanju su~elja va{e aplikacije. Dodajetekontrole, grafiku i slike na formu kako bi stvorili izgled koji `elite. Svaka forma uva{oj aplikaciji ima svoj prozor za oblikovanje.
Za vi{e informacija Da bi nau~ili kako dodati kontrole u aplikaciju, pogledajte“Va{a prva Visual Basic aplikacija” kasnije u ovom poglavlju. Za u~enje vi{e detalja ooblikovanju su~elja, pogledajte 6. poglavlje “Stvaranje korisni~kog su~elja”.
Kodni prozor (Code Editor Window)Slu`i kao prozor za upis programskog koda aplikacije. Za svaku formu ili modul va{eaplikacije stvara se posebni kodni prozor.
Za vi{e informacija Za daljnje u~enje o tome kako upisati programski kod i koris-titi kodni prozor, pogledajte 5. poglavlje “Osnove programiranja”.
Prozor s polo`ajem forme (Form LayoutWindow)Prozor s polo`ajem forme (slika 2.2) omogu}uje vam odre|ivanje polo`aja forme uva{oj aplikaciji koriste}i umanjen izgled ekrana.
1. dio Temelji Visual Basica
16 Vodi~ za programere
Slika 2.2 Prozor s polo`ajem forme
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 17
Dodatni prozori (Immediate, Locals, and Watch Windows)Ovi dodatni prozori slu`e za kori{tenje pri tra`enju pogre{aka u va{im aplikacijama.Dostupni su samo kad izvr{avate aplikaciju unutar korisni~kog su~elja.
Za vi{e informacija Kako bi nau~ili vi{e o dodatnim prozorima, pogledajte 13.poglavlje “Tra`enje i obrada pogre{aka”
Napomena Pomo}ne dodatke su~elja Visual Basica mo`ete dodati koriste}iaplikaciju nazvanu add–in. Ova aplikacija dostupna je od neovisnih proizvo|a~asoftvera i pru`a dodatne mogu}nosti kao na primjer, kontrola izvornog koda, {tovam mo`e pomo}i pri timskom razvijanju projekata.
Mogu}nosti su~eljaVisual Basic omogu}uje veliku elasti~nost, dopu{taju}i vam uobli~avanje radnogsu~elja tako da najbolje odgovara va{em osobnom stilu. Mo`ete birati izme|u su~eljasa jednim ili vi{e dokumenata, te mo`ete podesiti veli~inu i polo`aj raznih elemenatakorisni~kog su~elja. Raspored koji stvorite ostat }e zapam}en i kod idu}ih pokretanjaVisual Basica.
SDI ili MDI su~eljeU korisni~kom su~elju Visual Basica na raspolaganju su vam dva razli~ita stila: su~eljes jednim dokumentom (single document interface, SDI) ili su~elje s vi{e dokumenata(multiple document interface, MDI). Sa SDI su~eljem, svi prozori radne okoline moguse slobodno pomicati bilo gdje po ekranu; sve dok god je Visual Basic trenutno aktivnaaplikacija, svi njezini prozori ostat }e iznad prozora drugih aplikacija. S MDI izborom,svi prozori radnog su~elja nalaze se unutar glavnog prozora promjenljive veli~ine.
Prijelaz izme|u SDI i MDI na~ina
1. Odaberite stavku Options iz izbornika Tools.
Prikazat }e se dijalo{ki okvir Options.
2. Odaberite karticu Advanced.
3. Potvrdite ili odzna~ite kontrolnu ku}icu SDI Development Environment.
Korisni~ko su~elje pokrenut }e se s odabranim stilom idu}i put kad pokreneteVisual Basic.
– ili –
Pokrenite Visual Basic iz naredbene linije s parametrima /sdi ili /mdi.
Usidreni prozoriVe}ina prozora korisni~kog su~elja mo`e biti usidrena ili povezana, me|usobno ili srubom ekrana. Ovo uklju~uje alatni okvir, prozor s polo`ajem forme, projektni prozor,prozor sa svojstvima, paletu boja, te prozor za neposredan upis naredbi, prozor s lo-kalnim varijablama i nadgledni prozor.
Sa MDI stilom, prozori mogu biti usidreni uz bilo koji rub glavnog prozora; kod SDIstila mogu biti usidreni samo ispod trake s izbornicima. Usidrenost prozora uklju~ujese ili isklju~uje potvr|ivanjem odgovaraju}e kontrolne ku}ice na stranici Docking udijalo{kom okviru Options, koji je dostupan pozivom naredbe Options iz izbornikaTools.
Kako usidriti ili odsidriti prozor
1. Odaberite prozor koji `elite usidriti ili odsidriti.
2. Odvucite prozor do `eljenog polo`aja dr`anjem pritisnute lijeve tipke mi{a.
3. Dok povla~ite, okvir prozora }e biti vidljiv.
4. Otpustite tipku mi{a.
Va{a prva Visual Basic aplikacijaStvaranje aplikacije u Visual Basicu je jednostavno. Koliko jednostavno? Kao odgo-vor, isprobajte Zdravo, Visual Basic i Firstapp aplikacije koje slijede.
Zdravo, Visual BasicPostoje tri glavna koraka pri stvaranju aplikacije u Visual Basicu:
1. Stvaranje su~elja
2. Postavljanje svojstava
3. Pisanje programskog koda.
Da biste vidjeli kako se to radi, pratite korake iz sljede}ih postupaka za stvaranje jed-nostavne aplikacije koja se sastoji od okvira s tekstom i naredbenog gumba. Kad klik-nete na naredbeni gumb, poruka “Zdravo, svijete!” }e se pojaviti u okviru s tekstom.
1. dio Temelji Visual Basica
18 Vodi~ za programere
Stvaranje su~eljaForme su temelj za stvaranje korisni~kog su~elja neke aplikacije. Mo`ete koristiti for-me za dodavanje prozora i dijalo{kih okvira svojoj aplikaciji. Mo`ete ih iskoristiti ikao spremnike za dijelove koji nisu vidljivi dio korisni~kog su~elja. Na primjer, uva{oj aplikaciji mo`ete imati formu koja }e slu`iti kao spremnik za grafiku koju nam-jeravate prikazati na drugim formama.
Prvi korak u izgradnji Visual Basic aplikacije je stvaranje formi koje }e biti temelj su-~elja aplikacije. Nakon toga potrebno je kreirati objekte koji }e opremiti stvorene for-me. Za ovu prvu aplikaciju, koristit }ete dvije kontrole koje se nalaze u alatnomokviru.
gumb kontrola
okvir s tekstom
naredbeni gumb
Kreiranje kontrole kori{tenjem alatnog okvira
1. Kliknite alat kontrole koju `elite kreirati – u ovom slu~aju okvir s tekstom (text box).
2. Pomaknite pokaziva~ na va{u formu. Pokaziva~ }e imati izgled kri`a, kao {to jeprikazano na slici 2.3.
Slika 2.3 Kreiranje okvira s tekstom te alatni okvir
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 19
3. Dovedite kri` na mjesto gdje `elite postaviti gornji lijevi kut kontrole.
4. Povla~ite kri` sve dok kontrola ne bude imala `eljenu veli~inu (povla~enje zna~idr`anje pritisnute lijeve tipke mi{a dok pomi~ete objekt mi{em).
5. Otpustite tipku mi{a.
Kontrola }e se pojaviti na formi.
Drugi jednostavan na~in dodavanja kontrole na formu je dvoklik na gumb za `eljenukontrolu u alatnom okviru. Ovaj postupak }e kreirati kontrolu unaprijed odre|ene veli-~ine na sredini forme; nakon toga mo`ete pomaknuti kontrolu na `eljeni polo`aj naformi.
Promjena veli~ine, pomicanje i zaklju~avanje kontrolaUo~ite da se na kutovima kontrole pojavljuju mali pravokutni okviri koji se zovuhvataljke za odre|ivanje veli~ine; koristit }ete ih u sljede}em koraku za promjenuveli~ine kontrole. Mo`ete koristiti i mi{a, tipkovnicu i naredbe izbornika za pomicanjekontrola, zaklju~avanje i otklju~avanje polo`aja kontrola, te za pode{avanje njihovihpolo`aja.
Kako promijeniti veli~inu kontrole
1. Odaberite kontrolu kojoj `elite promijeniti veli~inu tako da mi{em kliknete na nju.
2. Postavite pokaziva~ na hvataljku, i povucite je dok kontrola ne bude `eljeneveli~ine.
Hvataljke na kutovima mijenjaju veli~inu kontrole vodoravno i okomito, dokhvataljke na rubovima mijenjaju veli~inu kontrole samo u jednom smjeru.
3. Otpustite tipku mi{a.
– ili –
Upotrijebite SHIFT zajedno sa kursorskim tipkama za promjenu veli~ine odabranekontrole.
Kako pomaknuti kontrolu
• Upotrijebite mi{a za povla~enje kontrole do novog polo`aja na formi.
– ili –
U prozoru sa svojstvima objekata promijenite vrijednosti svojstava Top i Left.
Kad je kontrola odabrana, mo`ete upotrijebiti CTRL s kursorskim tipkama za pomica-nje kontrole za jednu jedinicu mre`e (grid unit). Ako je mre`a isklju~ena, kontrola }ese micati po jedan piksel.
1. dio Temelji Visual Basica
20 Vodi~ za programere
Kako zaklju~ati pozicije svih kontrola
• U izborniku Format odaberite stavku Lock Controls.
– ili –
Kliknite na gumb Lock Controls Toggle koji se nalazi na alatnoj traci Form Editor.
Ovaj postupak zaklju~at }e sve kontrole na formi na njihovim polo`ajima u tom tre-nutku tako da ih ne mo`ete slu~ajno pomaknuti jednom kad ste ih postavili na `eljenomjesto. Samo kontrole na odabranoj formi bit }e zaklju~ane; kontrole na drugim for-mama bit }e nedirnute. Ovo je uklju~eno – isklju~eno naredba, pa je mo`ete iskoristitii za otklju~avanje polo`aja kontrola.
Kako namjestiti polo`aj zaklju~anih kontrola
• Mo`ete “gurnuti” kontrolu koja ima fokus dr`anjem pritisnute CTRL tipke i pri-tiskom na odgovaraju}u kursorsku tipku.
– ili –
Mo`ete promijeniti svojstva kontrole Top i Left u prozoru sa svojstvima.
Sad imate su~elje za “Zdravo, svijete!” aplikaciju kao {to je prikazano na slici 2.4.
Slika 2.4 Su~elje aplikacije “Zdravo, svijete!”
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 21
Postavljanje svojstavaSljede}i korak je odre|ivanje svojstava kontrola koje ste kreirali. Prozor sa svojstvima(slika 2.5) omogu}uje jednostavan na~in postavljanja svojstava za sve objekte naformi. Za otvaranje prozora sa svojstvima, odaberite naredbu Properties Window uizborniku View, kliknite na gumb Properties Window na alatnoj traci, ili iskoristitepomo}ni izbornik kontrole.
Slika 2.5 Prozor sa svojstvima
1. dio Temelji Visual Basica
22 Vodi~ za programere
Okvir s nazivom objekta
Kartice sa sortiranim svojstvi-
Lista svojstava
Prozor sa svojstvima sastoji se od sljede}ih dijelova:
• Okvir s nazivom objekta – Prikazuje ime objekta kojem }ete odrediti svojstva.Kliknite strelicu na desnoj strani ovog okvira za prikaz liste svih objekata trenutnoodabrane forme.
• Kartice sa sortiranim svojstvima – Odaberite izme|u abecednog popisa svojstava ilihijerarhijskog popisa podijeljenog po logi~kim kategorijama, kao {to su upravljanjeizgledom, pismima ili polo`ajem.
• Lista svojstava – Lijeva kolona prikazuje sva svojstva odabranog objekta. U desnojkoloni mo`ete vidjeti i promijeniti njihove vrijednosti.
Kako odrediti svojstva iz prozora sa svojstvima
1. U izborniku View odaberite stavku Properties, ili kliknite na gumb Properties naalatnoj traci.
Prozor sa svojstvima prikazat }e svojstva odabrane forme ili kontrole.
2. Sa liste svojstava odaberite ono koje `elite promijeniti.
3. U desnoj koloni, upi{ite ili odaberite novu vrijednost svojstva.
Neka svojstva imaju ve} unaprijed odre|enu listu mogu}ih vrijednosti koje su pore-dane po rednim brojevima. Ovu listu mo`ete vidjeti klikom na strelicu na desnojstrani okvira u kojem je ispisana vrijednost, ili mo`ete kru`iti kroz listu dvoklikomna taj okvir.
Za primjer aplikacije “Zdravo, svijete!” trebat }ete promijeniti vrijednosti tri svojstva.Za ostala svojstva ostavite ve} odre|ene vrijednosti.
Objekt Svojstvo Vrijednost
forma Caption Zdravo, svijete!
okvir s tekstom Text (prazno)
naredbeni gumb Caption OK
Odre|ivanje svojstva IconSve forme u Visual Basicu imaju op}u, unaprijed odre|enu ikonu koja se pojavljujekad smanjite tu formu. Unato~ tome, vjerojatno }ete promijeniti tu ikonu u neku drugukoja }e prikazivati primjenu te forme u va{oj aplikaciji. Za dodjelu ikone formi, promi-jenite vrijednost svojstva Icon za tu formu. Mo`ete koristiti 32 x 32 piksela velikeikone koje su standardne za 16-bitne verzije Microsoft Windowsa, a koriste se i uWindowsima 95/98 te Windowsima NT, kao i 16 x 16 piksela velike ikone koje sekoriste u Windowsima 95.
Pisanje programskog kodaKodni prozor (Code Editor Window) je mjesto gdje upisujete programski kod svojeaplikacije. Programski kod sastoji se od naredbi, konstanti i definicija. Kori{tenjemkodnog prozora mo`ete brzo pregledati i promijeniti bilo koji dio programskog kodasvoje aplikacije.
Kako otvoriti kodni prozor
• Dvoklikom na formu ili kontrolu kojoj `elite upisati programski kod.
– ili –
U projektnom prozoru odaberite ime forme ili modula, pa kliknite na gumb ViewCode.
Slika 2.6 prikazuje kodni prozor koji }e se pojaviti kada dvaput kliknete na naredbenigumb, te doga|aji za ovu kontrolu.
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 23
Slika 2.6 Kodni prozor
1. dio Temelji Visual Basica
24 Vodi~ za programere
Mo`ete odabrati `elite li prikazati sve potprograme u istom kodnom prozoru, ili }e bitiprikazana samo jedan potprogram.
Kako prikazati sve potprograme u jednom kodnom prozoru
1. U izborniku Tools odaberite stavku Options.
2. Na kartici Editor u dijalo{kom okviru Options, potvrdite kontrolnu ku}icu lijevood opcije Default to Full Module View. Kontrolna ku}ica lijevo od opcijeProcedure Separator dodaje ili bri{e liniju izme|u potprograma.
– ili –
Kliknite na gumb Procedure View u donjem lijevom kutu kodnog prozora.
Kako prikazati samo jedan potprogram u kodnom prozoru
1. U izborniku Tools, odaberite stavku Options.
2. Na kartici Editor u dijalo{kom okviru Options, odzna~ite kontrolnu ku}icu lijevood opcije Default to Full Module View.
– ili –
Kliknite na gumb Procedure View u donjem lijevom kutu kodnog prozora.
Doga|aji za kontrolu Command1
Kodni prozor uklju~uje sljede}e elemente:
• Okvir s listom objekata – Prikazuje ime odabranog objekta. Kliknite na strelicu nadesnoj strani okvira za prikaz svih objekata na aktivnoj formi.
• Okvir s listom svojstava – Popis potprograma ili doga|aja za odabrani objekt. Okvirprikazuje ime odabranog potprograma – u ovom slu~aju, Click. Kliknite na strelicuna desnoj strani okvira za prikaz liste svih potprograma vezanih za odabrani objekt.
Kreiranje doga|ajem pokretanih potprogramaProgramski kod u Visual Basic aplikaciji je podijeljen u manje blokove koji se naziva-ju potprogrami. Doga|ajem pokretan potprogram, kao onaj kojeg }ete kreirati, sadr`iprogramski kod koji }e biti izvr{en kad se javi doga|aj (na primjer, kad korisnik kliknena gumb). Doga|ajem pokretan potprogram za kontrolu sastoji se od imena kontrole(odre|enog u svojstvu Name), podvlake (_) te imena doga|aja. Na primjer, ako `eliteda naredbeni gumb s imenom Command1 pokrene doga|ajem pokretan potprogramkad korisnik klikne na njega, koristit }ete potprogram Command1_Click.
Kako kreirati doga|ajem pokretan potprogram
1. U okviru s popisom Object, odaberite ime objekta na aktivnoj formi (aktivna formaje ona koja trenutno ima fokus).
U ovom primjeru, odaberite naredbeni gumb Command1.
2. U okviru s popisom Procedure odaberite ime doga|aja za odabrani objekt.
U ovom primjeru, potprogram Click je ve} odabran, jer je to standardni potprogramza naredbeni gumb. Uo~ite da se sad u kodnom prozoru pojavljuje predlo`ak zaovaj doga|ajem pokretan tip potprograma.
3. Upi{ite sljede}i programski kod izme|u naredbi Sub i End Sub:
Text1.Text = “Zdravo, svijete!”
Doga|ajem pokretan potprogram trebao bi izgledati ovako:
Private Sub Command1_Click ()Text1.Text = “Zdravo, svijete!”
End Sub
Uo~it }ete da ovaj programski kod zapravo mijenja svojstvo Text kontrole imena Text1u “Zdravo, svijete!”. Sintaksa ovog primjera ima oblik objekt.svojstvo gdje je Text1objekt, a Text svojstvo. Ovu sintaksu mo`ete koristiti za promjenu svojstava bilo kojeforme ili kontrole kao odgovor na doga|aje koji }e se pojaviti tijekom izvo|enjaaplikacije.
Za vi{e informacija Za informacije o kreiranju ostalih tipova potprograma,pogledajte “Uvod u potprograme” u 5. poglavlju “Osnove programiranja”.
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 25
Pokretanje aplikacijeZa pokretanje aplikacije, odaberite stavku Start u izborniku Run, kliknite na gumbStart na alatnoj traci, ili pritisnite F5. Kliknite na naredbeni gumb koji ste kreirali naformi, i vidjet }ete tekst “Zdravo, svijete!” ispisan u okviru s tekstom.
Primjer aplikacije FirstappVisual Basic vam omogu}uje bogatstvo alata naprednijih od onih koje ste koristili uprvoj aplikaciji, pa }ete uskoro koristiti puno drugih mogu}nosti za obradu i prilagod-bu svojih aplikacija. Pregled aplikacija danih kao primjer mo`e biti odli~an na~indaljnjeg u~enja Visual Basica. Sljede}i primjer pokazuje kako na jednostavan na~inkreirati korisnu aplikaciju u Visual Basicu.
Aplikacija Firstapp pokazuje kako se mogu iskoristiti kontrola podataka (data control)i kontrola mre`e (grid control) za prikaz tablice informacija iz baze podataka. VisualBasic omogu}uje jednostavan pristup informacijama u bazi podataka iz va{e aplikacije.Kontrola podataka ima mogu}nost kretanja kroz slogove u bazi podataka, uskla|uju}iprikaz zapisa u kontroli podataka s polo`ajem u slogu.
Aplikacija se sastoji od kontrole podataka, kontrole MSFlexGrid, okvira s listom i dvanaredbena gumba. Mre`a prikazuje tabelu informacija o proizvodima dobivenu izNorthwind baze podataka. Dok korisnik odabire stavku koriste}i gumbe za kretanje ukontroli podataka, ime odabranog proizvoda }e biti prikazano u toj kontroli. Korisnikmo`e i dodati proizvode na “listu za kupovanje” u okviru s listom dvoklikom natrenutno odabranu stavku u mre`i.
Za dodavanje stavke u okvir s listom, koristit }ete postupak AddItem (postupak jefunkcija Visual Basica koja djeluje na odre|eni objekt, u ovom slu~aju na okvir s lis-tom). Sintaksa za odre|ivanje postupka (objekt.postupak) je sli~na sintaksi odre|ivanjasvojstva (objekt.svojstvo). Postupak AddItem vam dopu{ta dinami~ko dodavanje stavkiu okvir s listom tijekom izvo|enja aplikacije. Obratno tome, postupak Clear se koristiza brisanje svih stavki u okviru s listom.
Za vi{e informacija Da biste nau~ili vi{e o postupcima, pogledajte “Tuma~enjesvojstava, postupaka i doga|aja” u 3. poglavlju “Forme, kontrole i izbornici”.
Kreiranje projektaKreiranje aplikacije zapo~injete odabirom stavke New Project u izborniku File, zatimodabirete Standard EXE u dijalo{kom okviru New Project (kad prvi put pokreneteVisual Basic, biti }e prikazan dijalo{ki okvir New Project). Visual Basic kreira noviprojekt i prikazuje novu formu. Da biste kreirali su~elje, postavite kontrolu podataka,kontrolu MSFlexGrid, okvir s listom i dva naredbena gumba. Kontrola MSFlexGrid nepostoji u standardnom alatnom okviru, pa }ete je dodati na sljede}i na~in:
1. dio Temelji Visual Basica
26 Vodi~ za programere
Kako dodati kontrolu u alatni okvir
1. Odaberite stavku Components iz pomo}nog izbornika (da biste ga dobili, kliknitedesnom tipkom mi{a unutar alatnog okvira).
Prikazat }e se dijalo{ki okvir Components.
2. Prona|ite stavku MSFlexGrid (Microsoft Flex Grid 6.0) u okviru s listomComponents i potvrdite kontrolnu ku}icu s lijeve strane stavke.
3. Kliknite na gumb OK.
Ikona za kontrolu MSFlexGrid }e se pojaviti u alatnom okviru.
Upotrijebite alatni okvir za kreiranje kontrole podataka, kontrole MSFlexGrid, okvira slistom i dva naredbena gumba na formi. Ako se ne sje}ate kako, pogledajte “Stvaranjesu~elja” ranije u ovom poglavlju.
Odre|ivanje svojstavaU prozoru sa svojstvima, promijenite svojstva objekata prema sljede}oj tabeli. Za osta-la svojstva ostavite ve} postavljene vrijednosti.
objekt svojstvo postavka
Form Caption Proizvodi
Data1 DatabaseName staza\Biblio.mdb RecordSource All Titles
DataGrid1 DataSource Data1
Command1 Caption Brisanje
Command2 Caption Izlaz
Svojstvo DatabaseName kontrole podataka mora uklju~ivati i stvarnu stazu do bazepodataka. Standardno je baza podataka Biblio.mdb instalirana u istom direktoriju gdjei Visual Basic. Kad odaberete svojstvo DatabaseName u prozoru sa svojstvima, mo`etekliknuti gumb na desnoj strani okvira za prikaz standardnog dijalo{kog okvira File-Open uz pomo} kojeg mo`ete potra`iti tu datoteku. Kad je svojstvo DatabaseNameodre|eno, svojstvo RecordSource u prozoru sa svojstvima }e sadr`avati listu tabela ilislogova odabrane baze podataka. Postavljanje vrijednosti svojstva DataSource za kon-trolu MSFlexGrid na Data1 }e automatski povezati mre`u s kontrolom podataka.
Pisanje programskog kodaSav programski kod ove aplikacije se nalazi u doga|ajem pokretanim potprogramimaCommand1_Click, Command2_Click, Data1_Reposition i MSFlexGrid1_DblClick.Dvaput kliknite na formu ili kontrolu za dobivanje kodnog prozora, i upi{ite program-ski kod u odgovaraju}e potprograme.
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 27
Sljede}i programski kod upi{ite u Command1_Click potprogram i on }e obrisati okvirs listom kad korisnik klikne na ovaj naredbeni gumb:
Private Sub Command1_Click ()List1.Clear ‘ brisanje okvira s listom
End Sub
U gornjoj naredbenoj liniji pozivate postupak Clear okvira s listom List1. PostupakClear }e obrisati sadr`aj okvira s listom.
Ovaj programski kod treba upisati u potprogram Command2_Click za brisanje formeiz memorije i zavr{etak rada aplikacije:
Private Sub Command2_Click ()Unload Form1End ‘ kraj rada aplikacije
End Sub
U gornjem potprogramu, prva linija poziva postupak Unload za formu. Ako je potreb-no obaviti neku funkciju pri ga{enju aplikacije, kao {to je snimanje datoteke, taj pro-gramski kod }ete smjestiti u potprogram Unload forme. Druga linija poziva funkcijuEnd, koja zavr{ava izvo|enje aplikacije.
Sljede}i programski kod treba upisati u potprogram Data1_Reposition kako bi seobnovio sadr`aj svaki put kad se odabere zapis:
Private Sub Data1_Reposition ()Data1.Caption = Data1.Recordset(“ProductName”)
End Sub
U gornjoj naredbenoj liniji dodjeljujete vrijednost na desnoj strani (sadr`aj polja Titleu objektu RecordSet kontrole podataka) svojstvu na lijevoj strani (svojstvo Captionkontrole podataka).
Ovaj programski kod dodajte u potprogram MSFlexGrid_DblClick kako bi aplikacijadodala novu stavku u okvir s listom kad korisnik dvoklikom potvrdi odabrani red:
Private Sub MSFlexGrid_DblClick ()List1.AddItem MSFlexGrid.Text
End Sub
U gornjoj naredbenoj liniji pozivate postupak AddItem okvira s listom (List1). Tekstkoji }e biti dodan u okvir s listom nalazi se u argumentu postupka; u ovom slu~ajusadr`aj polja Title u zapisu kontrole podataka. Proslje|ivanje vrijednosti argumentusli~no je dodjeljivanju vrijednosti svojstvu; za razliku od naredbe dodjeljivanja, znakjednakosti nije potreban.
1. dio Temelji Visual Basica
28 Vodi~ za programere
Snimanje projektaVa{ posao na izradi aplikacije zavr{it }ete biranjem stavke Save Project u izbornikuFile. Visual Basic }e vas odvojeno upitati za snimanje forme te zatim i projekta. Jednood mogu}ih imena projekta bilo bi “Lista za kupovanje”. Windows 95/98 i WindowsNT operativni sustavi dopu{taju vam imena datoteka do 255 znakova duljine, a imenadatoteka mogu sadr`avati i znakove razmaka. Starije verzije Microsoft Windows oper-ativnog sustava ograni~uju vas na imena datoteka s osam karaktera, sa sufiksom od trikaraktera.
Pobolj{anje va{e aplikacijeUpravo ste zavr{ili svoju prvu Visual Basic aplikaciju; ona izvodi jednostavnu, alikorisnu funkciju. Ovu aplikaciju mo`ete iskoristiti kao temelj za dodavanje sli~nihmogu}nosti u druge aplikacije, koriste}i svoje vlastite podatke umjesto onih izBiblio.mdb datoteke. Naravno, da bi ovu aplikaciju napravili stvarno korisnom, mo`dapo`elite dodati mogu}nost snimanja ili tiskanja sadr`aja okvira s listom, dodavanjanovih podataka kao {to su cijena i dostupnost, ili ~ak dobivanje podataka o kreditnojkartici i preno{enje narud`be putem Interneta. U nastavku ove knjige, prona}i }eteprimjere kako u~initi to i puno drugih stvari.
2. poglavlje Razvijanje aplikacije u Visual Basicu
Vodi~ za programere 29