You are on page 1of 116

MSc.

GenciBerati

PrincipetVisualBasic 6.0

Kapitulli I
Prezantimi i par me Visual Basic 6.0
1.1 Nj prshkrim i shkurtr i Gjuhs Visual Basic
Visual Basic 6.0 sht rruga m e shpejt dhe m e thjesht pr krijimin e aplikacioneve pr Microsoft Windows. Edhe nse jeni nj programues me eksperienc, por edhe nse jeni fillestar n programim, tek Visual Basic do t gjeni nj bashksi mjaft t plot instrumentesh t nevojshme pr t thjeshtesuar krijimin e shpejt t apliakcioneve. VISUAL BASIC sht nj gjuh programimi e nivelit te larte e evoluar nga versioni i hershm pr DOS i quajtur BASIC. Pjesa Visual i referohet metods pr krijimin e ndrfaqjes grafike t prdoruesit (Graphical User InterfaceGUI). Me Basic kuptojme Beginners' Allpurpose Symbolic Instruction Code (kodi i instruksioni simbolik t prgjithshm i fillestareve). Visual Basic sht nj gjuh mjaft e lehte pr tu kuptuar dhe msuar. Kodi ngjan pak a shum si gjuha angleze. Kompani t ndryshme software kan prodhuar versione t ndryshme t BASIC, si jan QBASIC, QUICKBASIC, GWBASIC, IBM BASICA etj. VISUAL BASIC sht nj gjuh programimi VIZUALE dhe e drejtuar nga eventet (events). Kto jan edhe divergjencat m kryesore nga BASICu i vjetr. N BASIC, programimi bhet n nj file text dhe programi ekzekutohet ne mnyr sekuenciale. N VISUAL BASIC, programimi behet ne nj mjedis grafik. Prdoruesi mund t klikoj mbi fardo objekti i cili ka funksionet dhe pronsit (properties) e tij dhe mund t shkruhet nj kod programimi n do event, kshtu q do objekt duhet t programohet n mnyre t pavarur pr t qn i aft ti prgjigjet eventeve te ndryshme. Kshtu, nj program VISUAL BASIC sht i prbr nga shum nnprograme, ku secili ka kodin e tij dhe secili mund t ekzekutohet i pavarur dhe n t jjtn koh t gjith mund t lidhen s

MSc.GenciBerati

PrincipetVisualBasic 6.0

bashku n nj rrug apo nj tjetr. Gjuha Visual Basic eshte mjaft e fuqishme. Pothuajse do detyre programimi mund t kryhet me kt gjuh. Si edhe mund ta merrni me mend, duhet mjaft pun pr t konsideruar veten tuaj ekspert t ksaj gjuhe, por menjher sapo ju t kuptoni koceptet baz t Visual Basic ju menjher do t shikoni se mund t jeni mjaft productive me kt gjuh. Kjo gjuh programimi sht m e prdorura ndrt t gjitha gjuht n historin informatiks. Gjuha e programimit Visual Basic sht e ndrfutur n nj sr aplikacionesh t tjera pr Microsoft Windows si Microsoft Excel, Microsoft Access etj.

1.2 Instalimi i Visual Basic 6.0


N vijim po paraqes shkurtimisht disa informacione mbi instalimin e Microsoft Visual Basic n sistemin tuaj, rrugn se si hiqen apo shtohen komponent t Visual Basic, mnyra se si msohet apo merret informacion shtes me Visual Basic. Ju mund t instaloni Microsoft Visual Basic nprmjet programit Setup. Programi setup gjendet n diskun e par t instalimit. Ky program Setup mund t ekzekutohet automatikisht mbasi ju e keni future CD prkatse n CDDrive. Programi Setup do t instaloj komponentet e Visual Basic nga CDROM n Hard Diskun tuaj. Gjithashtu do t instalohen edhe skedart e nevojshm pr informacion, ndihm apo dokumetime t tjera pr programuesin. Perpara se ta instaloni, ju duhet t siguroheni q kompjuteri juaj dhe sistemi i prdorur knaq kerkesat e Visual Basic. Pr t punuar me Visual Basic kompjuteri juaj duhet t ket parametrat e hardware dhe sistemin e operimit si m posht:

Microsoft Windows 95 ose m lart, ose Microsoft Windows NT Workstation 4.0 (Service Pack 3 e kshillueshme) ose m lart. 486DX/66 MHz ose me frekuenc m t madhe (Rekomandohet Pentium ose procesor m i avancuar), ose ndonj procesor Alpha me Microsoft Windows NT Workstation t instaluar. Nj CDROM disk drive.

MSc.GenciBerati

PrincipetVisualBasic 6.0

Rezolucion ekrani VGA ose m t avancuar pr Microsoft Windows. 16 MB RAM pr Windows 95, 32 MB RAM pr Windows NT Workstation. Nj mouse ose nj tjetr device t pranueshme t ngjashme.

M sipr prmendm parametrat e krkuar Hardware dhe Software pr instalimin e Gjuhs VB. Duhet t njihemi edhe me parametrat e krkuar pr ekzekutimin e nj aplikacini t realizuar me VB, t cilt jan

Pentium 90MHz ose mikroprocesor m i avacuar. VGA 640x480 resolution screen m i avancuar i suportuar nga Microsoft Windows. 24MB RAM pr Windows 95, 32MB pr Windows NT. Microsoft Windows NT 3.51 ose m i avancuar, ose Microsoft Windows 95 e m lart. Microsoft Internet Explorer versioni 4.01 ose m i avacuar (versioni 4.01 Service Pack 1 ose m i avancuar pr DHTML krijuesa aplikacionesh).

Duhet t paraqesim edhe hapsirat minimale t domosdoshme t krkuara pr instalimin e Visual Basic 6.0.

Standard Edition: instalimi tipik (typical installation) 48MB, instalimi i plot (full installation) 80MB. Professional Edition: instalimi tipik (typical installation) 48MB, instalimi i plot (full installation)80MB. Enterprise Edition: instalimi tipik (typical installation) 128MB, instalimi i plot (full installation) 147MB. Komponentt shtes (nse kerkohen): MSDN (pr dokumentacionin ndihms): 67MB, Internet Explorer 4.x: afersisht 66MB.

MSc.GenciBerati

PrincipetVisualBasic 6.0

Pasi siguroheni pr sa m lart, ndiqni kt hapa pr t instaluar Gjuhen e programimint Visual Basic. 1. Fut Kompakt diskun me numrin 1 n CDROM drive. 2. Prdor komandn m t prshtatshm pr t ekzekutuar skedarin Setup, i cili ndodhe si tham n direktorin rrnj n diskun 1. Nse sistemi juaj suporton opsionin Autorun, ather ky skedar me emrin Setup do t ekzekutohet automatikisht sapo t futni kompakt diskun. 3. Zgjidh Install Visual Basic 6.0. 4. Ndiq instruksionet e Setupit n ekran. Ndrsa pr t hequr apo vendosur komponente t Visual Basic duhet t ndiqen hapat e mposhtm: 1. Fut Kompakt diskun me numrin 1 n CDROM drive. 2. Prdor komandn m t prshtatshm pr t ekzekutuar skedarin Setup, i cili ndodhe si tham n direktorin rrnj n diskun 1. Nse sistemi juaj suprton Autorun, ather ky skedar me emrin Setup do t ekzekutohet automatikisht sapo t futni kompakt diskun. 3. Zgjidh butonin Custom n kutin e dialogut Microsoft Visual Basic 6.0 Setup. 4. Selekto komponentet pr tu instaluar (ose deselokto komponentet q duhet t hiqen ) n list kutin t kutis s dialogut Custom. 5. Ndiq instruksionet e Setupit n ekran. Ndrsa prt marr informacion apo ndihm pr nivele t ndryshme t puns n Visual Basic Duhet t instaloni Microsoft Developer Network MSDN, i cili sht i ndar n dy CD.

MSc.GenciBerati
1.3 Mjedisi i Visual Basic 6.0

PrincipetVisualBasic 6.0

Rruga pr t hyr ne ambjentin e programit sht e njjt si pr do program tjetr. Po paraqesim tre rrugt e ekzekutimit t Visual Basic, a) me mnyn start, b) me ambjentin Windows Explorer dhe c) me ikonn e Visual Basic. a) Kliko mbi butonin Start n Task bar t Windowsit. Selekto grupin Programs, dhe pastaj Microsoft Visual Basic 6.0. b) Kliko mbi butonin Start n Task bar t Windowsit. Selekto Programs. Prdor ambjentin Windows Explorer pr t gjetur skedarin e ekzekutueshm t Visual Basicut. c) Bj dopio klik mbi ikonn e Visual Basic. Kjo ikon paraqitet si ne figurn.

Natyrisht ju mund t krijoni shortCut dhe t bni dopio klik mbi shortcut. Ekzekutoni Programin, dhe pas ekzekutimit t Visual Basic 6.0 do t shfaqen kutit e dialogjeve si tregohet n figuren 1.1. Le t njihemi me mjedisin e Gjuhes s programimit. T shohim se far shfaqet n ekran mbasi ekzekutojm Visual Basic. Ju mund t zgjidhni t nisni nj projekt t ri, mund t hapni nj projekt ekzistues ose mund t zgjidhni nga lista e projekteve t perdorura kohet e fundit (recent). Nj projekt sht nj koleksion skedarsh q e formon aplikacionin tuaj. Ky koleksion konsiston n forma (skedart e formave prkatse), n module (skedart e moduleve) etj. Gama e programeve q mund t krijoni sht mjaft e gjr, megjithat ne do t koncentrohemi n krijimin e programve Standart EXE q do t thot programe t ekzekutueshme. Mjafton t klikoni mbi ikonn e

MSc.GenciBerati

PrincipetVisualBasic 6.0

Standart EXE dhe do t hyni n mjedisin e programimit t Visual Basic 6.0.

Figura1.1 farparaqitetpasekzekutimittVisualBasic6.0

Si shihet me posht, n figurn 1.2, mjedisi i Visual Basic 6.0 konsiston n kto dritare: Dritarja e nj Forme bosh n t ciln ju mund t krijoni ndrfaqjen e aplikacionit tuaj. Dritarja Project q shfaq skedart e prdorur n kt projekt

10

MSc.GenciBerati

PrincipetVisualBasic 6.0

Fig.1.2mjedisiiintegruariVisualBasic

Dritarja Properties qe shfaq pronsite (properties) e kontrolleve dhe objekteve t perdorura n programin tuaj. Prfshihet gjithashtu nj Toolbox q konsisiton n disa butona t disa kontrollerave kryesore pr krijimin e nj aplikacioni n Visual Basic. Kontrollerat jane instrumenta si p.sh. jan kutite e tekstit (textbox), butonat (command buttons), etiketat (labels) dhe objekte t tjera q vendosen n forma pr t paraqitur inputet, outputet apo pr veprime t tjera. Natyrisht q sht e domosdoshme t njihemi me terminologjine q do t prdorim, me emertimin e objekteve, ambjeve, kontrollerave etj. Visual Basic sht nj gjuh programimi e orjentuar nga objektet (object oriented). Ne nuk do t synojm t paraqesim karakteristikat e prgjithshme t gjuhve object oriented pasi kjo sht nj fush mjaft e

11

MSc.GenciBerati

PrincipetVisualBasic 6.0

gjr, por do t japim disa prcaktime t cilat do t na krijojn nj ide t prgjithshme mbi kto gjuh dhe pr Visual Basicun n veanti. Po paraqesim tani percaktimet pr elementet dhe nocionet me t prdorshme n gjuht e orijentuara nga objektet dhe pr Visual Basic n veanti. M posht sht dhn prcaktimi pr Klasn, Objektin, Metodat, Eventet, Procedurn etj, si dhe pr objektet konkrete t VB si: Forma, Kontrollerat, etj. Klasa (class) sht nj shabllon apo nj plan q prcakton karakteristikat e nj objekti dhe prshkruan mnyrat se si do t sillet objekti dhe se si ai do t paraqitet. Nnklasa (subclass) sht nj prcaktimi i ri i klass t nj objekti i cili prdor nj klas (superclass) si pik referimi. Ky prcaktim vjen nga trashgimi i ndonj ndryshimi n klasen referuese prind (parent class ose superclass). Objekti (object) sht nj shmbull apo nj prfaqsues i nj klase. Sis hmbull kemi nj form e ekzekutuar apo nj controller n nj form, jan objekte. Pronsit (properties) jan emrtime/vlera q paraqesin t dhnat e nj bjekti t nj klase. Metoda (method) sht nj funksion q prshkruan sjelljen e nj klase. Percaktimi i nj metode pr nj klas nuk prfshin edhe implementimin e metods, duhet t shtohet kualifikuesi i implementimit t metods n mnyr q t bhet i vlefshm implementimi i metods n nj klas. Nj nnklas mund t prcaktohet nga ripercaktimi i implementimit t nj metode apo nga ndryshimi i ndonj properti. Eventet (Events) sht nj veprim i ndodhur ndaj nj objekti. Pr kt veprim mund t shkruajm nj kod q aktivizohet nse ai veprim ndodh. Nj event mund t gjenerohet nga nj veprim i prdoruesit si p.sh. kliku, dopiokliku, shtypja e nj tasti nga tastiera, nga kodi i programit ose nga ndonj timer (nj controller pr kontrollin periodik t eventeve).

12

MSc.GenciBerati

PrincipetVisualBasic 6.0

Lidhjet (Associations) sht nj klase e cila prshkruan relacionet mes dy klasave apo prfaqsuesve t klasave (objekteve). Pronsit e Association jan pointerat apo referencat n dy prfaqsuesit. Modeli sht nj bashksi klasash, pronsish dhe lidhjesh qe mundson shprehjen e nj informacioni pr nj fush t caktuar. Pr shembull nj rrjet kompjuterik prbhet nga Network Devices dhe Logical Network. Le t shohim disa klasa dhe objekte mjaft t prdorshme n Visual Basic 6.0 Forma sht nj klase mbajtse. Nj koleksion kontrollerash t cilt paraqesin t dhena apo informacione. Format mund t prfshihen n nj bashksi formash q quhet Form Set. Kontrollerat (controls) jan objekte grafike si p.sh. kutite e tekstit (text box), butonat etj t cilt vendosen n form pr t paraqitur t dhena, apo pr t realizuar ndonj veprim, ose pr t lehtsuar prdorimin e forms. Ne do t tregojm funksionin e kontrollerave kryesore. Ju mund t krijoni kto controller mbi nj form n VB duke prdorur kutine e instrumeteve (toolbox) Form Controls n Form Designer.

1.4 Kontrollerat m t prdorshm n Visual Basic 6.0 Krahas prcaktimit t kontrollerave kryesor t Toolboxit, pr t lehtsuar lexuesin, paraqitet edhe nj figure n te ciln tregohet forma e secilit prej tyre. TextBox Control: Shpesh quhet fush editimi, paraqitje ose kontrolli i botimit (edit control). Ky kontroll paraqet informacion q mund t futet gjat kohes kur po krijohet aplikacioni (design time), apo gjat kohes s ekzekutimit t programit (run time). Gjithashtu n text box mund t paraqitet informacion q mund t prcaktohet nga kodi i programit. Label Control: sht nj kontroller grafik q prdoret pr t vendosur tekst n ndrfaqjen tuaj. Ky tekst nuk mund t ndrrohet nga prdoruesi i programit n run time (gjat kohes s ekzekutimit).

13

MSc.GenciBerati

PrincipetVisualBasic 6.0
Command Button Control: Prdoret pr t filluar, ndrprer apo prfunduar nj procedure gjat ekzekutimit t nj programi. ListBox Control: Prdoret pr t afishuar nj liste me artikuj, nga e cila prdoruesi mund t zgjedh nj ose m tepr prej tyre. N se numri i elementeve t lists eshte m i madh se mund t

Fig.1.3Kutiaeinstrumenteve(toolbox)

paraqes lista, ather automatikisht do t shtohet ComboBox Control: sht nj kombinim i karakteristikave t nj text box dhe nj list box. Nj prdorues, nprmjet combo box mund t zgjedhe t dhnat nga nj list dhe ti vendos n text box. Data Control: Lejon akses dhe perdorim t nj data base i cili lidhet me kt data kontrol. Data control lejon veprime mbi data base, pra t manipulojm secilin record t data base t lidhur. Timer: sht nj kontroller pr kontrollin periodik t eventeve. Nj timer njuk sht aktiv n run time. Kontrollerat jane t shumt n numr dhe t shumllojshm, sipas natyrs dhe funksionalitetit. Ktu prmendm vetm ato m kryesoret. T gjitha kontrollerat e siprprmendur jan przgjedhur si definitive n toolboxin e mjedisit t puns, me simbolin si m posht. Natyrisht me nj procedur t thjesht mund t hiqen dhe t shtohen kontroller t tjer n toolbox.

14

MSc.GenciBerati 1.4 Formatet e skedareve t Visual Basic

PrincipetVisualBasic 6.0

Microsoft Visual Basic prdor dhe krjon nj numr t konsiderueshm skedarsh si n kohen e dizenjimit dhe gjate kohes se ekzekutimit. Kto skedar i nevoiten projektit apo aplikacionit sipas rastit apo funksionalitetit.

1.4.1 Prapashtesat e skedarve t projektit


Kur ju krijoni nj projekt dhe e kompiloni at n gjuhn Visual Basic, ju krijoni nj numr t konsiderueshm skedarsh. Kto skedar mund t ndahen n kategori sipas kohs n t cil ato jan aktive, si m posht: Designtime (gjat kohs s dizenjimit t projektit), miscellaneous development (t prbr), dhe runtime (gjat koh s ekzekutimit). Skedart design time jan konstruksione bllok t projektit tuaj si p.sh. basic modules (.bas) apo form modules (.frm) Skedart Miscellaneous krijohen nga procese apo funksione t ndryshme t mjedisit t puns s Visual Basic, si p.sh. Package and Deployment Wizard dependency files (.dep).

1.4.2 Skedart Designtime dhe Miscellaneous


M posht jan skedart Designtime dhe Miscellaneous t cilt mund t
Prapashtesa .bas .cls .ctl .ctx .dca .ddf .dep Prshkrimi skedar moduli i VB Modul i klases Skedar kontrolli perdoruesi Skedar kontrolli perdoruesi binare Depo aktive designer Pakete dhe shperndarje wizard CAB skedar informacioni Pakete dhe shperndarje wizard CAB skedar pavaresie

15

MSc.GenciBerati
.dob .dox .dsr .dsx .dws .frm .frx .log .oca .pag .pgx .res .tlb .vbg .vbl .vbp .vbr .vbw .vbz .wct ActiveX dokument nga skedare

PrincipetVisualBasic 6.0

ActiveX dokument binare nga skedare Skeadar aktive designer Skeadar binar aktive designer Shperndarje wizard nga skedar script Skedar forme Skedar forme binar Skedar Log pr lanimin e gabimeve Skedar Control TypeLib cache Skedar Property page Skedar Binary property page Skedar Resource Skedar Remote Automation TypeLib Skedar Visual Basic group project Skedar Control licensing Skedar Visual Basic project Skedar Remote Automation registration Skedar Visual Basic project workspace Skedar Wizard launch Template WebClass HTML

16

MSc.GenciBerati 1.4.3 Skedart RunTime

PrincipetVisualBasic 6.0

Kur ju kompiloni nj project n Visual Basic, t gjitha skedart Design time t domosdoshm do t prfshihen n skedart e ekzekutueshm Run time. Skedart Run time paraqiten m posht:
Prapashtesa .dll .exe .ocx .vbd .wct Prshkrimi Komponent Inprocess ActiveX Komponent Skedar i ekzekutueshm ose ActiveX ActiveX control Skedar ActiveX gjenddje e dokumentit WebClass HTML template

Natyrisht q n kt moment ne nuk mund t dime karakteristikat dhe funksionalitetin e t gjitha tipeve t skedarve t prmendur, por pas shembujve t mposhtm do t krijojm iden e sakt pr shumicn nga skedart e siprprmendur.

1.5 Mjedisi i integruar i krijimit t aplikacioneve


Mjedisi i puns n Visual Basic quhet Mjedis i Integruar i Krijimit (Integrated Development Environment ose IDE) pr arsye se integron shum funksione t ndryshme si jan dizenjimi, editimi, kompilimi dhe rregullimi n nj mjedis t prbashkt. N mjaft gjuh t tjera, secili nga funksionet e msiprme operojn si programe n vete, secili me ndrfaqjen e vet. Mjedis i Integruar i Krijimit konsiston n elemntet e mposhtme.

Menu Bar: q paraqet komandat q prdoren n punn me Visual Basic. Prve mnuve standarte si File, Edit, View, Windows dhe Help, natyrisht menu bar prmban edhe menu t futjes s funksioneve

17

MSc.GenciBerati

PrincipetVisualBasic 6.0

specifike t programimit si Projekt, Format ose Debug. Menuja e VB paraqitet si ne figurn m posht Menya kryesore e Visual Basicut sht mjaft e pasur e gjithashtu edhe prbrja e menyve sht e pasur me opsione t ndryshme. Aktivizimi i menyve bhet n menyre t zakonshme si pr t gjitha prmes mausit apo prmes tastiers me ALT ose me ALT+Shkronja e nnvizuar n meny (AIt+F, AIt+E, etj). Prbrja e menys dhe aktivizimi i opsioneve t mundshme n to varet edhe prej kontekstit t puns dhe objekteve t zgjedhura momentalisht gjat puns. Menya File N menyne File (Skedar) ndodhen komandat pr pun me skedar: shtimi, hapja, ruajtja, shtypja, etj. Komandat e ndrlidhura me ndonj veprim t caktuar jan t ndara n grupe, prmes vijave ndarse (Fig. xxx). Save Forml As... (Ruaj formn si ...) ruajtja e forms me emr tjetr. Save Selection (Ruaj zgjedhjen) Save Change Script (Ruaj Scriptin ndryshues) Print ... (Shtype), bn shtypjen e objektit aktual, forms, kodit etj. Print Setup... (zgjedhja, konfigurimi i shtypjes). Make Projectl.cxe... (Bje Projektin.exe...) sherben per krijimin e fajllit ekzekutiv, me prapashtes exe, t projektit. Make Project Group (Krijo grup Fig.1.4MenujaFile projektesh). New Project (Projekt i ri), mundson fillimin e projektit t ri Open Project (Hape projektin), bn hapjen e projektit ekzistues. Add Project... (Shto projekt...), shton nj projekt brenda projektit aktual, me qllim t krijimit t grupit t projekteve. Remove Projec. (Largo projektin).

18

MSc.GenciBerati

PrincipetVisualBasic 6.0

Save Project (Ruaje projektin), bn ruajtjen e ndryshimeve t bra n projekt dhe e ruan me emrin m t cilin ka qne i ruajtur. Save Project As... (Ruaje projektin si...) bn ruajtjen dhe emertimin e projektit pr t parn her ose ruajtjen e projektit t ruajtur paraprakisht, por tani me emr t ri. 1,2,3,4 Lista e fajllave q jan hapur s fundi. Exit (Dalja), shrben pr mbylljen e programit. Menyt t cilat kan n vazhdim tri pikat (...) kur t aktivizohen krkojne informacione shtes prmes dritareve t ndryshme pr dialog. Menyte tjera automatikisht kryejne veprimin e caktuar n meny. Menya Edit N menyne Edit, si zakonisht ndodhen komandat pr prerje, kopjim, krkim, zvndesim, etj (Fig. 1.4). Select All ( Zgjedhi t gjitha), bn zgjedhjen e t gjitha elementeve, p.sh, objekteve n form, tekstit n dritaren e kodit, etj. Select All Columns (Zgjedhi t gjitha kolonat), kur jemi duke punuar me tabela. Table (Tabela), pr pun me tabela. Find (Gjeje), shrben pr hapjen e dialogut pr krkim, me t cilin i krkojm vlerat e caktuara, n form, dritare t kodit etj. Replace (Zvendso), shrben pr zvendsimin e vlers ekzistuese, me vler t re (po ashtu bhet prmes dialogut q hapet). Select All ( Zgjidh t gjitha). Realizon zgjedhjen e t gjitha objekteve aktive n ambjentin a puns tuaj. Undo (Zhbeje), anullon veprimin (ndryshimin) e fundit Redo (Ribeje), kryen rishtazi veprimin (ndryshimin) e Fig. 1.5MenyaEdit fundit. Cut (Preje), largon zgjedhjen aktuale (t tekstit, objektit, forms, etj) dhe e vendose n memorje (Clipboard pjesa e rezervuar e memories pr kt qllim) ashtu q t njejtat thirren n pozit t re pmes Paste

19

MSc.GenciBerati

PrincipetVisualBasic 6.0

(Ngjit) (ka kuptimin e marrjes prej memorjes dhe ngjitjesvendosjes n pozit t re, aty ku sht momentalisht kursori ose zgjedhja). Copy (Kopjo), bn kopjimin e zgjedhjes aktuale. Paste (Ngjite), thrret prej memorjes prmbajtjen momentale t saj (nga Clipboard). Paste Link (Ngjite lidhjen), krijon vetm lidhjen me objektin ne Clipboard. Remove (Largo), bn largimin, fshirjen e zgjedhjes momentale Delete (Fshije), bn fshirjen e t dhns apo objektit t zgjedhur (selektuar). Delete Table from Database (Fshije tabeln prej bazs s t dhnave), kur jemi duke punuar me baza t t dhnave. Indent (dhmbzimi, shtyerja), zhvendosja e tekstit. Outdeat (largimi) i nj shtyerje (Indenti). Insert File (Inserto fajllin), shrben pr insertimin e fajllit ekzistues, n kuadr t projektit aktual. List Properties/Methods (Listo tiparet/metodat), shrben pr listimin e tipareve dhe metodave n dispozicion gjat shkruarjes s kodit, pr t lehteAar dhe ndihmuar shkruarjen e kodit. List Constants (Listo konstantet) Quick Info (lnformate e shpejt) Parameter Info (Informat pr parametrat) Complete Word (Kompleto fjaln), shrben pr kompletimin e fjals s filluar, gjat shkruarjes s kodit. Go To Row (Shko tek rreshti) shrben pr kalim n rreshtin e caktuar. Bookmarks (shenjat), (Bookmarkshenje n libr, pra si shenjat q i lm n fibr, pr gjetjen e faqes se caktuar, p.sh, duke palosur skajin e flets prkatse), t cilat vendosen n pjes t caktuara t kodit ose projektit, pr t'i gjetur ose per t'iu referuar me vone. Menuja View N menyne View (pamja), ndodhen komandat t cilat kan t bjn me rregullimin e elementeve t cilat do t shihen n dritaren e VB dhe mnyrn se si do t duken ato (Fig. 1.5). Gjithashtu, mundson kalimin prej nj pamje n tjetrn. Njherit prmes ksaj menye

20

MSc.GenciBerati

PrincipetVisualBasic 6.0

mund t paraqesim ose t largojm nga ekrani dritaret e ndryshme, si Project Explorer, Form Layout Window, etj. N kt meny ndodhet edhe nnmenya Toolbar, prmes s cils zgjedhim se cili shirit i veglave do t shihet n ekran. Zakonisht, varesisht prej kontekstit aktivizohet shiriti i caktuar i veglave, kurse prmes menyse Toolbar mund t shtojme ose largojm shiritat tjere t veglave. Menya Project Menya Project, prmban komandat pr manipulim me objektet e projektit dhe tiparet e tij (Fig. 1.6). Prmes komandave Add, mundsohet shtimi i objekteve t caktuara n kuadr t projektit. Prmes komands C omponents i qasemi komponenteve t ndyshme t cilat mund t'i prdorim n programe, pr t lehtsuar dhe njherit pr t prsosur programet. N listen e komponenteve ndodhet nj numr shum i madh i komponenteve t gatshme t cilat lehtsojn punn dhe mundsojn kryerjen e veprimeve t ndryshme prmes komandave t gatshme nga komponentet e ofruara. Prmes opcionit Pr oject Pr operties ... hapet dritarja pr dialog, prmes s cils prcaktohen opcionet pr mnyren e startimit t programit dhe tipareve tjera t projektit, si emertimi, versioni, modeli etj. Menya Format Menya Format, prmban komandat t cilat prdoren pr formatizimin e objekteve t projektit (programit) (Fig. 1.7). Prmes tyre lehtsohet rreshtimi dhe formsimi i objekteve, shprrndarja horizontale dhe vertikale e tyre brnda forms. qndrsimi (centralizimi) dhe rradha e paraqitjes. Njherit kemi edhe opcionin Lock Controls, prmes s cilit bjm mbylljen e kontrollave, q t mos ket mundsi t bhet ndryshimi i pozits s tyre n kuadr t forms, kur duam q pozita e prcaktuar e objektit t mos ndryshohet rastsisht, etj.

21

MSc.GenciBerati

PrincipetVisualBasic 6.0

Menya Debug Menya Debug sht shum e rndsishme gjat shkruarjes s kodit t programeve. Prmban shum komanda t cilat ndihmojn gjetjen e gabimeve n programe. Mundson ekzekutimin hap pas hapi t programit. Mundson ndrprerjen e ekzekutimit t programit, pr t br ndryshime n kod ose n vlera t ndryshme ose n rradhn e ekzekutimit t rreshtave t kodit. T gjitha kto mundsojn gjetjen dhe prmirsimin e leht t gabimeve n programet e V B. Menya Run Menya Run (Ekzekuto), prmban komandat pr ekzekutimin e programit, pauzimin, ndaljen, dhe prsritjen. N bashkpunim me menyne Debug mund t bj ekzekutimin e pjesshm. Prmes saj mund t bhet edhe prkthimi (Compile Kompilimi) i programit para ekzekutimit, kshtu bhet edhe verifikimi i sintakss s kodit dhe gjetja e gabimeve t shtypjes dhe t kodit. Menya Tools Menya Tools, ndr t tjera prmban komandat pr shtimin e procedurave n kod dhe prcaktimin e tipareve t tyr si dhe opsionin Menu Editor (Editorin e menyve, programi prmes s cilit krijojm menytc e programit) dhe menyn Options (Opcionet) prmes s cils bjm konfigurimin e programit.

Menya AddIns Menya AddIns (shtesat), prmban komandat prmes s cilave zgjrojm ambientin programues t VB. ,Shtimi bhet prmes AddIn Manager (Menaxherit t shtesave) e pastaj shtesat i gjeni n listn AddIns. Mund t shtohen edhe programe t tjera t cilat jan projektuar t punojn n VB, si p.sh.
Fig.1.11 MenujaAddIns

22

MSc.GenciBerati

PrincipetVisualBasic 6.0

programi pr krijimin e dritareve t cilat komunikojn me bazat e t dhnave. Menya Window Menya Window prmban komandat pr manipulim me dritaret n kuadr t dritares punuese t VB. Dritaret mund t shprndahen, rirreshtohen dhe t ripozicionohen prmes komandave n kt meny, n mnyr horizontale, vertikale dhe kaskadike. Gjithashtu prmban edhe listn e objekteve t projekteve t hapura dhe mundson kalimin prej njrit objekt n tjetrin.

Fig.1.12Menuja Window

Menya Help Menya Help prmban komandat prmes s cilave krkoni ndihm. VB prmban dokumentacion t pasur pr ndihm lidhur me prdorimin e programit dhe prmban shembuj t shumte. Varsisht prej instalimit mund t gjeni shpjegime t nevojshme lidhur me veprimet e caktuara. Nse sht instaluar Fig.1.13MenyaHelp edhe "programi" MSDN (Microsoft Developers Network) q paraqet sistemin pr ndihm pr programet e Microsoftit, athere mnya help do t jet shum e pasur. MSDN instalohet veant, nuk sht n kuadr t VB.

Shiritat e veglave Si shumica e programeve t Microsoftit edhe VB ka shiritat e veglave (Toolbars) n t cilt ndodhen funksionet dhe komandat t cilat prdoren m s shpeshti, pr t lehtesuar dhe shpejtuar prdorimin e tyre. Nse mbahet treguesi i mausit pr nj koh mbi tastin prkats n shiritin e veglave, do t paraqitet shpjegimi ose prshkrimi i shkurtr (TooITip) i tastit prkats. Shpjegimi paraqitet n nj fush t verdhe pran tastit ku sht pozicionuar treguesi i mausit. VB ka katr shirita t veglave: Standard, Debug, View dhe Form Editor. N fillim shihet vetm shiriti i veglave standarde, i pozicionuar nn

23

MSc.GenciBerati

PrincipetVisualBasic 6.0

menyn kryesore. Shiritat tjer t veglave mund t paraqiten duke zgjedhur n menyn View Toolbars. Aty paraqitet lista e shiritave t veglave dhe shiriti i aktivizuar paraqitet me shnjen e zgjedhjes para tij. Shiritat paraqiten n dritare t veqanta dhe kan titullin e dritares dhe tastin pr mbyllje n skajin e djatht t titullit. Mirpo shiritat jan t tipit Dockablc (t ankorueshm, mund t lidhen n dok (si anijet), pra mund t vendosen "t lidhen" n pjesn e shiritave ose n pjest ansore t dritares s VB). Kur jan t lidhur, mund t zgjedhen prmes shenjs me vije t dyfisht ose si vij e hijzuar n skajin e majt ose t lart dhe mund t zhvendosen n pjest tjera t dritares duke i zvarritur. N shiritin standard t veglave ndodhen shumica e komandave nga menya File dhe Edit dhe ato nga menya Run (Ekzekuto). Gjithashtu ndodhen edhe tastet prmes s cilave aktivizojm/deaktivizojm dritaret Project Explorer, Properties Window, Form Layout Window, etj..
Ruan Kerkim Riben Nderpret ProjektExplorer Paraqitjaeformes DataView

zhben

Ekzekuto

Ndalon

DritarePropertive

Objektet

Toolbox

Figura.1.14ToolbariStandart

Shiriti i veglave Edit, ka t bj me editimin e kodit (programit) n dritaren e kodit dhe mundson qasje t shpejt n komandat, tiparet, metodat, parametrat dhe konstantat. Gjithashtu mundson zhvendosjen e tekstit (Indent, Outdent) dhe vendosjen e shenjave (Breakpoint).

Shiriti i veglave Debug, prdoret pr ekzekutimin e programit dhe menyrat e ndryshme t ekzekutimit hap pas hapi. Pastaj aty kemi edhe komandat prmes s cilave aktivizohet edhe dritarja pr ekzekutim t

24

MSc.GenciBerati

PrincipetVisualBasic 6.0

menjehershm (Immediate Window), q paraqet nj dritare n pjesn e poshtme t dritares s VB dhe n t ciln shihen rezultatet e ekzekutimit t programit.
Context Menu: sht nj shortcut pr veprimet m t prdorshme. Pr t

aktivizuar kt menu mjafton t klikoni butonin e majt t mousit mbi ojektin q jeni duke prdorur. Toolbars: prfaqson aksesin e shpejt t komandave m t prdorshme n mjedisin e programimit. Ju mjafton t shtypni butonin mbi toolbar dhe do t marr jet veprimi q prfaqsohet n ate buton. Ju mund t keni dijeni mbi konceptin e toolbarit nga ndonj ambjent tjetr pr Microsoft Windows. Toolbox: prfaqson nj bashksi mjetesh q prdoren n design time pr t vendosur kontrollerat n nj form. Ju mund t krijoni toolboxin tuaj n prshtatje me kontrollerat m t nevojshm pr natyren e aplikacionit q po krijoni. Dritarja e eksplorimit t projektit (Project Explorer Window): liston format dhe modulet n projektin tuaj.

Dritarja e Pronsive (Properties Windows): Liston Pronsit e kontrollerit t zgjedhur.

25

MSc.GenciBerati

PrincipetVisualBasic 6.0

Fig.Dritarjaepropertive (tipareve)

Shfletuesiiobjekteve(ObjectBrowser):listonobjekteteprdoruran projektdhekrijonlehtsiprthyrnkodineprogramit.

26

MSc.GenciBerati

PrincipetVisualBasic 6.0

Dritarja e editimit t kodit t programit (Code Editor Window): sht ambjenti n t cilin shkruhet kodi i programit.

27

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 2
Ndrtimi i nj aplikacioni ne Visual Basic 6.0
2.1 Struktura e nj aplikacioni Visual Basic
Nj aplikacion sht nj bashksi instruksionesh q e drejton kompjuterin t kryej nj ose disa detyra. Struktura e nj aplikacioni sht rruga n t ciln kto instruksione jan organizuar, d.m.th. ku jan ruajtur instruksionet dhe n ciln radh do t ekzekutohen kto instruksione. Aplikacione t thjeshta si p.sh. shembulli klasik Hello World, kan struktur t thjesht. Organizimi nuk sht i rndsishm kur kemi vetm nj rresht kod programi. Kur aplikacioni behet kompleks, ather nevoja pr organizim apo strukturim bhet domosdoshmri. Imagjinoni sikur aplikacioni juaj t lejonte ekzekutimin e instruksioneve n mnyr fare t rastsishme. Pr t kontrolluar ekzekutimin e nj programi, struktura sht shum e rndsishme pr programuesin (pasi mund t gjejm leht instuksionet apo elementet e tjera brnda aplikacionit). Pr arsyen se aplikacioni i Visual Basic sht i bazuar n objekte, struktura e kodit t objektit prcakton afrsisht prezantimin fizik t tij n ekran. Nj objekt prbhet nga t dhnat dhe kodi. Nse shikoni nj objekt Form n ekran, ai sht prezntimi i propertive t paraqitjes s tij apo t kodit q mund t ndikoj kto properti. Pr seciln form n nj aplikacion ka nj Form Module (skedar me prapashtesn .frm).

28

MSc.GenciBerati

PrincipetVisualBasic 6.0

Secila Form Module prmban event procedures t cilan jan seksione pr t shkruar kod programi q sht i ekzekutueshn n prgjigje t eventit prkats. Forma si kemi thn mund t prmbaj kontrollera t cilt kan eventet e tyre. N kt kapitull do t prqndrohemi kryesisht n krijimin e ndrfaqjes grafike t nj aplikacioni, duke shfrytzuar disa shembuj si krijimi i nj programi pr llogaritjen e vellimit t cilindrit, nj makine llogaritse dhe shembulli i prdorimit t kontrollerave.

2.1 Krijimi i aplikacionit tuaj t par


N kt seksion, ne nuk do t shohim aspektet teknike t programimit n Visual Basic, por vetm t kemi nj ide mbi t dhe si tham do t prqendrohemi n mnyrn se si do t futim kontrollerat n forma apo si do te dizenjojm ndrfaqjen grafike. Prmedm m sipr se nj aplikacion n visual Basic konsiston n nj Projekt i cili prbhet nga skedar t tjer t ndryshm. Le t guxojm t krijojm aplikacionin e par n Visual Basic duke realizuar shembullin klasik t printimit n ekran t nj fjale apo fjalie, ne po zgjedhim fjaln Tungjatjeta. Po tregojm nj pr nj t gjitha veprimet pr ndrtimin e ktij aplikacioni t thjesht, ndrsa pr shembujt n vijim do t kalojm disa hapa t cilt mund t nnkuptohen nga lexuesi me nj stazh n prdorimin e kompjuterit. Mbasi keni ekzekutuar Visual Basic, nj form standarte do t paraqitet n mjedisin e programimit. N fillim do t krijojm t ashtuquajturin Ndrfaqje t programit q sht ajo far to ti prezantohet prdoruesit. Natyrisht q aplikacioni yn i par do t ket vetm nj form, n t ciln do t jet nj text box dhe nj command button. Aplikacioni do t konsistoj n paraqitjen e tekstit Tungjatjeta n kutin e tekstit menjher mbas klikimit t butonit. Pr t ndrtuar ndrfaqjen e ktij shembulli do t ndiqen hapat m posht

29

MSc.GenciBerati

PrincipetVisualBasic 6.0

1. Klikoni n toolbar mbi butonin e text box t cilin e njiihni nga me lart. 2. Leviz treguesin e mousit mbi form dhe ndaloni n vendin ku do t filloj hapsira e text box. 3. Bej Drag nga pozicioni i fillimit, duke formuar hapsirn e text box it. 4. Lshoj butonin e mousit. Kjo sht rruga pr t vendosur do kontroller tjetr n nj form. Do t shihni se text box sht formuar tashm n formn tuaj. Po t njjtat veprime do t bni pr t vendosur command button. Tani forma juaj do t shfaqet si m posht

30

MSc.GenciBerati

PrincipetVisualBasic 6.0

Mbasi keni ndrtuar ndrfaqjen grafike duhet t zgjidhen pronsit (properties) e tre objekteve t prdorura q jan Forma, Text box dhe Command button. Pr t vendosur propertit ndiqni kto hapa: 1. Aktivizoni dritaren e propertive 2. Kliko mbi objektin t cilit do ti vendossh apo ndrrosh propertit. 3. Vendos vlern prkatse pr do zgjedhje t dritares se propertive. Pr shmbullin ton kemi nevoj, prkatsisht pr tre objektet, t vendosim kto vlera:
Objekti Form Text box Command button Propertia Caption Text Caption Vlera qe vendoset Tungjatjeta (Empty) OK

Pasi vendost vlerat e pronsive, duhet q t shkruajm kodin e programit n eventin e caktuar. Ne tham se do t krijojm nj program

31

MSc.GenciBerati

PrincipetVisualBasic 6.0

q t aktivizoj tekstin Tungjatjeta mbas klikimit t command butonit, pra do t kemi vetm nj event i cili sht klikimi i butonit OK. Pr t shkruar kodin q do t realizoj paraqitjen e tekstit n text box duhet t ndjekim kto hapa: 1. Bej dopio klik mbi objektin n event t t cilit do t shkruajm kodin. N rastin ton eshte objekti command button OK. 2. Automatikisht do t hapet dritarja e kodit, n t cilin mund t shkruajm 3. Shkruaj kodin pikrisht aty ku ndodhet kursori, ndrmjet rreshtave t bolduar. Private Sub Command1_Click() Text1.Text = "Tungjatjeta!" End Sub

Tani nuk mbetet tjeter vetm t shohim rezultatin e puns ton duke zbatuar aplikacionin nprmjet butonit Start t toolbarit ose duke shtypur butonin F5 t tastiers. Pasi e keni ekzekutuar aplikacionin shtypni butonin OK dhe do t shikoni t shfaqet n kutin e tekstit teksti Tungjatjeta.

32

MSc.GenciBerati

PrincipetVisualBasic 6.0

2.1.1 Disa variante t tjera t shmbullit m sipr


Megjithese sht e njjta kerkes si n shmbullin m sipr, le t shohim se si nj rresht i caktuar i kodit t programit manipulon aplikacionin n nj mnyr apo nj tjetr. Ju mund t provoni hap pas hapi edhe shembujt m posht. Shembulli 2.1.1 Para s gjithash ju duhet t ekzekutoni Microsoft Visual Basic. Normalisht, n projektin tuaj t ri, do t bhet aktive menjher nj form definitive e quajtur Form1. Tani bni dopioklik mbi form1 dhe do t shfaqet Source code pr kt form. Mos i jepni rndsi pr momentin instruksioneve t fillimit dhe t mbarimit (Private Sub Form_Load dhe End Sub). Shkruani ne mes ktyre rreshtave t ofruara nga vet Visual Basic, pikrisht aty ku ndodhet kursori tekstin qe shikoni me posht, prkatsisht pr tre shembujt ve e ve. Nse ekzekutoni shembullin 2.1.1 ju nuk do t shikoni asgje si rrezultat. Shembulli 2.1.2 dhe 2.1.3 kan rreshtin Form1.show q realizon shfaqjen e formes Form1 me rezultatin perkates. Shembulli 2.1.1 Private Sub Form_Load For i=1 to 5 print "Tungjatjeta" next i End Sub Shembulli 2.1.2 Private Sub Form_Load Form1.show For i=1 to 5 print " Tungjatjeta " next i End Sub Shembulli 2.1.3 Private Sub Form_Load Form1.show For i=1 to 10 print i next i

33

MSc.GenciBerati
End Sub

PrincipetVisualBasic 6.0

Mbasi e prekm sado pak krjimin e nj programi, tani le t shpjegojm hapat e nevojshm pr ndrtimin e nj aplikacioni n Visual Basic 6.0

2.2 Hapat pr ndrtimin e nj aplikacioni n Visual Basic


Nga sa tham m sipr mund t prgjithsojm hapat e krijimit t nj aplikacioni n Microsoft Visual Basic. Hapi 1. Realizo ndrfaqjen (Krijo format me kontrollerat dhe objektet e nevojshme) Hapi 2. Zgjidh Properties pr secilin nga kontrollerat apo objektet e (pronsit) Hapi 3. Shkruaj kodin e eventit (event code)

Duke ndjekur hapat m sipr provoni t implementoni shembujt m posht.

Shembulli 2.2 N shmbullin 2.2 po vendosim m shum kontroller n forme dhe kto jan tre text box, tre Label Control dhe nj command button. N kt kapitull, pr kt shmbull po shohim vetm ndrtimin e ndrfaqjes grafike kurse kodin do ta trajtojm n kapitullin 3. Ky shmbull konsiston n nj program t thjesht q llogarit vllimin e nj cilindri kur jepet rrezja e bazs dhe lartsia. Le t dizenjojm ndrfajen duke ndjekur hapat q prmendm n shembullin 2.1. Futni tre text box, tre Label dhe nj command button. Rregulloni prmasat e kontrollerave t prdorur n mnyre q t

34

MSc.GenciBerati

PrincipetVisualBasic 6.0

Psi vendosm shtat kontrollerat n formn ton, tani le t vendosim propertit pr to dhe pr formn. Para s gjithash kalo tek dritarja e pronesive t forms (properties window) dhe ndrysho fushn e titulluar caption nga form1 n Vllimi i cilindrit. Pastaj pr tre kutit e etiketave (label) ndrysho perseri fushn caption prkatsisht n Rrezja e bazs, Lartsia dhe Vllimi i cilindrit. Pasta pr tre kutit e tekstit (TextBox), pastro (fshij) n propertin text t secils nga text boxet prkatsisht permbajtjen text1 text2 dhe text3. Tani kemi tre text box bosh. Emrto text boxet prkatsisht rrezja, lartesia dhe vellimi n propertin name. M tej n buton komande (CommandButton) ndrysho caption e ktij butoni n O.K. dhe emrin (propertia name) n OK (sht mjaft e rndsishm t mos jen t njjt propertit Caption dhe Name pr disa arsye q do t kuptohen m von). Tani ruani projektin me emrin Cilinder.vbp dhe form me emrin cilindr.frm. Pr momentin po e lm mnjan kodin, pasi do ta trajtojm n kapitullin 3.

Shembulli 2.3 Dizenjimi i nj ndrfaqje trheqse dhe miqsore me prdoruesin (user friendly) duhet t jet hapi i par n ndrtimin e nj programi n Visual

35

MSc.GenciBerati

PrincipetVisualBasic 6.0

Basic. Paraqitja e aplikacionit sht po aq e rndsishme sa edhe elementet e tjer. Pr t ilustruar kt, le t shohim n paraqitjen e programit t makines llogaritese.

Ndiqni hapat e mposhtm pr t dizenjuar ndrfaqjen e makins llogaritse q shihni n figur. Ndrysho prmasat e forms (bj terheqje n kndet dhe meset e kuadratit t forms) deri n prmasat q mendoni se sht e mjaftueshme pr t gjitha elementet q do t prmbaj. Shko tek properties window dhe ndrysho caption si t dshironi (n shmbullin m sipr vlera e propertis caption sht Makin Llogaritse Copyright Genci Berati) Ndrysho propertite e tjera t forms si jan ngjyra e sfondit (background color), ngjyra e butonave, stili i korrnizave. Un rekomandoj kto property pr formn e Makins llogaritse:

36

MSc.GenciBerati
BorderStyle MaxButton minButton Fixed Single False True

PrincipetVisualBasic 6.0

Kt properti sigurojn faktin q prdoruesi nuk mund t ndryshojn prmasat apo t maximizoj dritaren e makines llogaritse, por mund ta minimizoje at. Ndrto Panelin e ekranit te makines llogaritse duke klikuar ne butonin Label dhe duke vendosur mousin n vendin perkats n form dhe duke terhequr prgjat siprfaqes qe duhet t zere ekrani i makins llogaritse. Kliko mbi panelin e ekranit dhe dritarja e propertive korresponduese do t shfaqet. Fshij caption e paracaktuar kshtu kemi nj label boshe, pasi n t do t paraqiten numrat paraprak apo rezultatet e kalkulimeve. Esht mir q t zgjidhet nj ngjyr e hapt pasi ngjyra e numrave apo e simboleve n at ekran po e zgjedhim t jet e zez. Tani vizato butonat e nevojshm pr ket makin llogaritse. Un sugjeroj t prdoren t njjtt butona si n figur. Testoje ekzekutimin e programit (n kt moment nuk jan funksional butonat, por vetn ndrfaqja grafike) duke shtypur f5. N se jeni t knaqur me paraqitjen, ather ruajeni projektin si dhe t gjitha skedarin q prmban formn. Tani ju me siguri mezi prisni t dini se si t shkruani kodin n mnyr q Makina llogaritse t punoj. Pr kodin e ktij programi, ju lutem referojuni kapitujve t mposhtm t Visual Basic (Kapitulli 3)

37

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 3
Si t shkruajm kod?
Pr ndrtimin e nj aplikacioni, mbasi ndrtohet paraqitja grafike e tij, duhet patjetr t shkruajm kod ne prgjigjeve t eventeve t kontrollerave apo forms (formave) s prdorur. Eventet do t sqarohen m posht pr secilin kontroll. Le t vazhdojm me shembujt q kemi n dor dhe t japim shtjet e rndsishme t shkrimit t kodit t programimit. Tani le t tentojm t shkruajm kodin pr programin e vllimit t cilindrit. Eventi n t cilin do t shkruajm kodin sht klikimi mbi buttonin OK. Pra mbasi t shtypet butoni OK do t aktivizohet kodi q do t realizoj llogaritjen e vllimit t cilindrit.

38

MSc.GenciBerati

PrincipetVisualBasic 6.0

N design mode (pra jo n koh e ekzekutimit), bj dopjoklik mbi butonin OK dhe shkruani kodin e mposhtm n mes t rreshtave Private Sub OK_Click( ) dhe End Sub PrivateSubOK_Click() r=Val(rrezja.Text) h=Val(lartesia.Text) pi=22/7 v=pi*(r^2)*h vellimi.Text=Str$(v) EndSub Kur ju t ekzekutoni programin (me butonin F5 t tastiers ose me butonin start n toolbarin standart t mjedisit) ju do t shikoni ndrfaqjen si paraqitet m sipr. N qoft se ju futni nj vler prkatsisht n kutine e tekstit t Rezes dhe t Lartsis dhe klikoni n butonin OK, menjher do t shfaqet vlera e vllimit n kutine e tekstit perkats. Do t prpiqem t sqaroj kodin e msiprm (source code) t programit tek fillestart (nse keni prvoj n Visual Basic, ju mund ta kaloni kt pjes). Le t shjegojm rreshtat e msiprm duke prdorur pseudo kodin si m posht

39

MSc.GenciBerati

PrincipetVisualBasic 6.0

Procedur pr klik n butonin OK pr t llogaritur vllimin e cilindrit Fillimiiprocedure Merrvlernerngakutiaetekstittrrezes Merrvlernehngakutiaetekstittlartsis Shninnjvlerkonstante22/7tpigrekut Llogaritvllimindukeprdorurformuln Nxjerrrezultatintekkutiaetekstitevllimit Fundiiprocedures. Sintaksa rrezja.Text konsiston n dy pjes rrezja sht emri (name property) e kutise se tekstit t rrezes ndrsa Text sht prmbajtja aktuale e ketij text box. Prgjithsisht, sintaksa sht: Objekti.Pronsia (Object.Property). N shmbullin ton, objektet jan rrezja, lartesia dhe vellimi, secila ka propertin text. Objekti dhe propertit e tij ndahen me nj pik. Prmbajtja e nj text box mund t shfaqet vetm n form teksti, ose n terma t tip t dhnash programimi, si string. Pr t konvertuar prmbajtjen e nj tekst (te nje text boxi) n nj vler numerike duhet t realizohen veprime matematikore, ju duhet t prdorni funksionin Val. S fundmi n mnyr q t shfaqim rezultatet n nj kuti teksti (text box) duhet t prdoret nj procedur e anasjellt, pra t kthehet nj vler numerike n nj tekst, duhet te prdoret funskioni Str$. Do t mundohem gjithashtu t shpjegoj sintaksn q prcakton nen proceduren (sub proceduren) Private Sub OK_click. Private Sub kupton q parametrat, vlerat dhe formulat q jan prdorur n kt procedur i prkasain vet subprocedurs OK (nj object n vete). Ato nuk mund t prdoren nga subprocedurat e tjera apo modulet. OK_Click prcakton se far lloji veprimi do ti prgjigjet subprocedura.Ketu, veprimi sht klikimi me mouse. Natyrisht q ekzistojne shum lloje veprimesh si jan keypress, keyup, keydown, mousemove, mousedown, initialize etj. T cilat mund t kemi rastin ti prdorim n kapitujt e metejshm. Pr do kontroller, disa nga eventet q lidhen me to jan paraitur n figurn m posht.

40

MSc.GenciBerati

PrincipetVisualBasic 6.0

Ne treguam m sipr se si t shkruajm kod n nj event t caktuar, konkretisht mbi nj command button. Menjher pas dopioklikut mbi buton, aktivizohej ambjenti ku mund t shkruanim kodin e eventit pr klikimin e butonit. Pr t shkrur kod mbi nj event t nj kontrolleri, mjafton q t zgjedhuim n ambjentin m sipr objektin n kombon 1 dhe eventin n kombon 2

Kombopr zgjedhjeneobjektit (1) Komboprzgjedhjen e eventit(2)

41

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 4
Puna me kontrollerat
Para se t shkruhet nj event procedur pr nj kontroll, pr tju prgjigjur nj veprimi t prdoruesit, ju duhet t zgjidhni nj sr propertish pr kontrollin pr t prcaktuar paraqitjen dhe se si do t punoj me event procedurn. Kto properties pr kontrollet ju duhet ti zgjidhni n dritaren e properties. Ktu nuk po sqarojm n detaje se si duhet t zgjidhen kto veori (properties). Megjithat po theksojm disa pika t rendsishme rreth zgjedhjes s propertive. Po paraqesim n figurn m posht dritaren e propertive. N kt figur paraqiten propertit e forms form1. Nse klikohet mbi objektet t tjera, dritarja e propertive do t marr vlerat e objektit prkats. N dritaren e propertive kemi dy mundsi t listimit t propertive dhe vlerave t tyre q jan sipas rendit alfabetik (Alfabetic) t propertive dhe sipas kategorive t propertive t ndara n grupe (Catogorized). Disa nga propertit si jan jan Emri (Name), Titulli (Caption), E dukshme (Visible) e tje. ekzistojn tek pothuaj t gjitha objektet e Visual Basic. Natyrisht, sipas natyrs s objektit ndryshojn edhe propertit. Po tregojm tani kategorit e propertive sipas natyrs. Apperance sht nj kategori me proprti pr paraqitjen e objektit. Behavior sht kategoria e propertive q tregojn se si do t sillet objekti n run time. Data sht nj kategori e vlefshme pr objektet e lidhura m nj baz t dhnash. N kt kategori ndodhen properti pr zgjedhjen e t dhn apo t dhnave t lidhura me objektin. Font sht kategoria e propertive q rregullon parametrat e tekstit t kontrollerit n prdorim.

42

MSc.GenciBerati

PrincipetVisualBasic 6.0

Position sht nj kategori apo grup propertish pr vendosjen e kontrollerit n mbartsin e tij. DDE jan propertit me an t t cilave rregullohen lidhjet me objektet e tjera. Misc ka properti t ndryshme. Scale, nj grup pronesish pr koordinatat e kufinjve t objektit n prdorim.

Figura . Propertit e formes Le t kalojm edhe nj her tek shembulli i makins llogaritse. Le t vendosim propertit e objekteve t prdorura n kt shembull. Ju duhet t vendosni Titullin e kontrollit (Caption Property) n mnyr q t prdoruesi i applikacionit tuaj t dij se far duhet br me at kontroll. Pr shmbull, n programin e makins llogaritse t gjith titujt (captions) e butonave si +,, MC, MR gjenden n makinat e zakonshme llogaritse kshtu nj prdorues i atij applikacioni nuk e ka t vshtir t manipuloj butonat. Ju duhet t zgjidhni nj Emr t kontrollit (Name property) pasi do t jet mjaft e leht pr ju pr t shkruar dhe lexuar event procedutar dhe per t rregulluar m leht programin tuaj m von.

43

MSc.GenciBerati

PrincipetVisualBasic 6.0

Nj tjetr property e cila sht e rndsishme sht ajo q realizon nse kontrolli juaj do t shfaqet apo jo n ekzekutim (Visible). Kjo property mund vetm t marr vlerat False ose True. Nj property edhe m e rndsishme sht ajo q rregullon nse kontrolli sht i mundshm (Enable) apo jo. Po paraqesim n figur m posht propertit e forms kryesore t makins llogaritse.

44

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 5

Menaxhimi i t dhnave nga Visual Basic N n jetn e prditshme kemi t bjm me nj numr shum t madh tipe t dhnash. Pr shmbull ne duhet t merremi me t dhna si emra, adresa, lek, data, kuota stoku, statistika etj prdit. Po ashtu n Visual Basic ne duhet t merremi me t tilla tipe t dhnash. Visual Basic i ndan t dhnat n tipe t ndryshme.

5.1 Tipet e t dhnave n Visual Basic Tipet e t dhnave ndahen n tipe numerike dhe jo numerike. 5.1.1 T dhnat numerike (Numeric Data) T dhnat numerike jan ato q konsistojn n numra t cilt mund t llogariten matematikisht me veprime t ndryshme standarte si mbledhja, zbritja, shumzimi, pjestimi e kshtu me rradh, N Visual Basic, t dhnat numerike jan t ndara n 7 tipe. Ato jan t prmbledhura n Tabln 5.1

Tabla 5.1: Tipet numerike t dhnave


Tipi Byte Integer Long Single Sasia ne memorje 1 byte 2 bytes 4 bytes 4 bytes Rrangu i vlerave 0 to 255 32,768 deri 32,767 2,147,483,648 deri 2,147,483,648 3.402823E+38 deri 1.401298E45 pr vlerat negative 1.401298E45 deri 3.402823E+38 pr vlerat pozitive

45

MSc.GenciBerati

PrincipetVisualBasic 6.0

5.1.2 Tipet jo numerike t t dhnave Tipet jonumerike t t dhnave jan prmbledhur n Tabln 5.2 Tabla 5.2: Tipet jo numerike t t dhnave
Tipi i t dhnes String(gjatsi fikse) String(gjatsi variable) Date Boolean Object Variant(numeric) Variant(tekst) hapsira n memorje Gjatsia e string Gjatsia + 10 bytes 8 bytes 2 bytes 4 bytes 16 bytes Gjatsia+22 bytes Rrangu 1 deri 65,400 karaktere 0 deri 2 miliard karaktere January 1, 100 deri December 31, 9999 Vertete ose Gabuar Ndonj object i futur Ndonj vlere sa Double E njjt me Variablin length string

5.1.3 Prapashtesat pr Literalet Literalet jan vlera t cilat ju shnoni pr nj t dhn . N disa raste ne duhet t shtojm nj prapashtes prapa nj Literal kshtu Visual Basic mund t bj kalkulim me m saktsi. Pr shmbull ne mund t prdorim num=2,3046# pr nj tip t dhenash Double. Disa nga shtesat jan shfaqur n Tabln 5.3. Tabla 5.3 shtesa & ! # Tipi i t dhens Long Single Double Currency

46

MSc.GenciBerati

PrincipetVisualBasic 6.0

Ne duhet t vendosim vlern e variablit string (Literal) n mes dy thonjzave vlern e variablit date dhe or mes dy shenjave #. Stringu mund t prmbaj do karakter prfshi edhe numrat. M posht po japim disa shmbuj. EmriAntarit="Turban, John." NumriTel="1800900888777" DataFillim=#31Dec00# DataFund=#12:00 am#

5.2 Menaxhimi i Variablave Variablat jan si kutit e posts n n PTT. Prmbajtja e variablave ndryshon her pas here tamam si prmbajtja e kutive t posts. N terma t Visual Basic, variablat jan zona t lokalizuara n memorjen e kompjuterit pr t mbajtur t dhna. Sikur n kutite e posts, do variabli duhet ti vihet nj emr. P}r t emrtuar variablat n Visual Basic duhet t ndiqen disa rregulla. 5.2.1 Emrat e variablave Rregullat pr t vendosur emrat e variablave n Visual Basic jan: Emri duhet t ket m pak se 255 karaktere Nuk duhet t ket hapsir Nuk duhet t filloj me nj numr Pika nuk sht e lejueshme Shembuj emrash t vlefshm dhe t pavlefshm variablash jan n Tabln 5.4 Tabla 5.4 Emra t vlefshm Makina_pare VitiNeVazhdim Emra_Tegjate_mund_te_perdoren Emra t pavlefshm Malina.pare 1DjaleiRi Ai&Babai *& nuk sht i pranueshm

47

MSc.GenciBerati

PrincipetVisualBasic 6.0

5.2.2 Deklarimi i Variablave N Visual Basic duhet ti deklarojm variablat para se ti prdorim ato duke prcaktuar emrin e variablit dhe tipin e t dhns. Ato, normalisht, deklarohen ne seleksionin General t dritares s kodit duke prdorur indtruksionin Dim. Formati sht si m posht: Dim EmriVariablit as TipiTeDhenes Shembull 5.1 Dim password As String Dim Emri As String Dim Kodi As Integer Dim x As Integer Dim totali As Integer Dim data As Date Ju mund ti deklaroni disa variabla n nj rresht duke i ndar me presje si pr shmbull: Dim password As String, Emri As String, num As Integer,............. N qoft se variabli nuk sht deklaruar, Visual Basic, automatikisht e deklaron variablin si Variant. Pr deklarimin e tipit string kemi dy formate t mundshme, njri pr tipin e variablit string fiks dhe tjetri pr varialbin string t variushm. Pr variablin string t ndryshueshm prdiret e njjta sintakse si n shembullin 5.1 m sipr . Pr variablin string fiks duhet t prdoret format i mposhtm: Dim EmrVariabli as String * n, ku n prcakton numrin e karaktereve q mund t mbaj ky variabl. Shmbulli 5.2: Dim EmriJuaj as String * 10 EmriJuaj mund t mbaj jo m shum se 10 karaktere.

48

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 6

Puna me Variablat

6.1 Dhnia e vlerave t variablave Pasi kemi deklaruar variablat duke prdorur instruksionin Dim, ne mund t vendosim vlerat n kto variabla. Formati i prgjithshm i nj deklarimi sht Variabl=Shprehje Nj Variabl mund t jet nj variabl i deklaruar ose nj vler e ndonj kontrolli (control property). Shprehja mund t jet nj shprehje matematike, nj numer, nj string, nj vler Boolean (e vertet ose false) etj. M posht jan disa shmbuj: NumriPar=100 NumriDyt=firstNumber99 userName="John Lyan" userpass.Text = password Label1.Visible = True Command1.Visible = false Label4.Caption = textbox1.Text NumriTret = Val(usernum1.Text) total = NumriPar + NumriDyt+ NumriTret

6.2 Operatort n Visual Basic N mnyr q t llogarisim inputet e prdoruesit dhe t gjenerojm rezultatet ne duhet t prdorim nj sr operatorsh matematik. N

49

MSc.GenciBerati

PrincipetVisualBasic 6.0

Visual Basic, prve + dhe , simbolet pr operatort matematike jan t ndryshm nga ato normale, si shihen n. Tabln 6.1. Tabla 6.1 Operatori ^ * / Mod Funksioni Matematik Fuqi Shumzim Pjestim Modulus (jep mbetjen nga nj pjestim i plot) Pjestim i Plote (heq numrat mas presjes) Lidhje String Shembull 2^4=16 4*3=12 12/4=3 15 Mod 4=3

\ + ose &

19\4=4 "Visual"&"Basic"="Visual Basic"

Shmbull 6.1: Emri=Text1.Text Mbiemri=Text2.Text EmriJuaj=Emri+Mbiemri numer1=val(Text3.Text) numer2=val(Text4.Text) numer3=num1*(num2^3) numer4=number3 Mod 2 numer5=number4/number1 Total=numer1+numer2+numer3+numer4+numer5 Average=Total/5 Ktu ne do t msojm se si t prdorim n kodin e Visual Basic.

50

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 7

Kontrolli i rrjedhshmris s programit

7.1 Opreratort e krahasimit Pr t realizuar vijueshmrin e nj programi n Visual Basic, ne mund t prdorim nj sr operatorsh t krahasimit. Parimisht operatort e krahasimit i ngjajn operatorve matematik. Operatort e krahasimit jan instrumente shum t rendsishme, t cilt lejojn programin e Visual Basic t krahasojn vlerat e dhna dhe t vendos se far veprimi t kryej, t ekzekutoj nj program apo t prfundoj nj tjetr. Kto operator jan treguar n Tabln 7.1. Tabla 7.1: Operatort e krahasimit Operatori = > < >= <= <> Kuptimi I njjt me M i madh se Me e vogl se M i madh se ose baraz M i vogl se ose baraz I ndryshm nga

* Ju mundet gjithashtu t krahasoni edhe string nprmjet ktyre operatorve. Gjithsesi jan disa rregulla pr tu ndjekur: Grmat e mdha jan m t vogla se grmat e vogla, "A"<"B"<"C"<"D".......<"Z" dhe numrat jan m t vegjl se germat.

51

MSc.GenciBerati
7.2 Operatort Logjik

PrincipetVisualBasic 6.0

Plus operatorve t kondicionuar kemi edhe disa operator logjik t cilt ofrojn m tepr mundsi n Visua Basic. Kto operator shfaqen n Tabln 7.2. Tabla 7.2 Operator And or Xor Not Kuptimi T dyja ant duhet t jen t vrteta Njra an ose tjetra duhet t jet e vrtet Ose njra an ose tjetra duhet t jen t vrtet E kunderta e vertet

7.3 Prdorimi i If.....Then.....Else me operator Pr nj kontroll efektiv t vijimsis s nj programi n Visual Basic, ne duhet t prdorim instruksionet If ThenElse s bshku me operatort e kondicionuar dhe me ato logjike. If kusht Then Shprehje t VB Else Shprehje t VB End If do If..Then..Else duhet t mbaroj me End if. Disa her nuk sht e nevojshme t vendosim Else.

Shembull 7.3.1: Private Sub OK_Click() firstnum = Val(usernum1.Text) secondnum = Val(usernum2.Text) total = Val(sum.Text) If total = firstnum + secondnum And Val(sum.Text) <> 0 Then

52

MSc.GenciBerati
correct.Visible = True wrong.Visible = False Else correct.Visible = False wrong.Visible = True End If End Sub

PrincipetVisualBasic 6.0

Pr m shum shembuj pr instruksionet If...Then...Else, shiko shmbujt m posht Shmbull 7.3.2:

Kodi i programit Dim num1 As Integer Dim num2 As Integer Dim intNumber As Integer

53

MSc.GenciBerati
Private Sub score() intNumber = intNumber + 1 End Sub Private Sub begin() intNumber = 0 Image1.Visible = False Image2.Visible = False Label6.Visible = False Label5.Visible = False Text3.Text = "" If Option1.Value = "true" Then n = 10 ElseIf Option2.Value = "true" Then n = 100 ElseIf Option3.Value = "true" Then n = 1000 End If

PrincipetVisualBasic 6.0

Randomize Timer num1 = Int(Rnd * n) num2 = Int(Rnd * n) Text1.Text = num1 Text2.Text = num2 Text3.SetFocus End Sub

Private Sub Command3_Click() End Sub Private Sub Command2_Click() End End Sub

54

MSc.GenciBerati
Private Sub Form_Load() Image1.Visible = False Image2.Visible = False Label6.Visible = False Label5.Visible = False End Sub

PrincipetVisualBasic 6.0

Private Sub Start_Click() begin End Sub Private Sub text3_keyDown(keyCode As Integer, shift As Integer) If keyCode = vbKeyNext Or keyCode = vbKeyDown Then begin End If End Sub Private Sub text3_keypress(keyAscii As Integer) If (keyAscii = 13) And Val(Text3.Text) = Val(Text1.Text) + Val(Text2.Text) Then Image1.Visible = True Image2.Visible = False Label5.Visible = True Label6.Visible = False score total.Caption = Str(intNumber)

ElseIf (keyAscii = 13) And Val(Text3.Text) <> Val(Text1.Text) + Val(Text2.Text) Then Image1.Visible = False Image2.Visible = True Label5.Visible = False Label6.Visible = True Text3.Text = "" End If End Sub

55

MSc.GenciBerati

PrincipetVisualBasic 6.0

Private Sub Command1_Click() End Sub Private Sub Next_Click() Image1.Visible = False Image2.Visible = False Label6.Visible = False Label5.Visible = False If Option1.Value = "true" Then n = 10 ElseIf Option2.Value = "true" Then n = 100 ElseIf Option3.Value = "true" Then n = 1000 End If Text1.Text = "" Text2.Text = "" Text3.Text = "" Randomize Timer num1 = Int(Rnd * n) num2 = Int(Rnd * n) Text1.Text = num1 Text2.Text = num2 Text3.SetFocus End Sub Private Sub OK_Click() If Val(Text3.Text) = Val(Text1.Text) + Val(Text2.Text) Then Image1.Visible = True Image2.Visible = False Label5.Visible = True Label6.Visible = False score total.Caption = Str$(intNumber) Else

56

MSc.GenciBerati
Image1.Visible = False Image2.Visible = True Label5.Visible = False Label6.Visible = True Text3.Text = "" End If End Sub Private Sub Option1_Click() n = 10 End Sub Private Sub Picture1_Click() End Sub Private Sub Option2_Click() n = 100 End Sub Private Sub Option3_Click() n = 1000 End Sub

PrincipetVisualBasic 6.0

Shmbull 7.3.3: Prdorimi i If....Then....Else

57

MSc.GenciBerati

PrincipetVisualBasic 6.0

N kt program, ju duhet t krijoni tre kutia teksti (Textbox), tre kuti etikete(LabelBox), nj imazh dhe katr butona komande. Ndrysho emrat e textbox duke filluar nga e majta me emrat x, y, dhe z. Ndrysho titullin (Caption) elabel1 n + dhe t label2 n =. Pastro titullin e label3 dhe ndrysho emrin e saj n paraqit. Qllimi i saj sht t paraqes nse prgjigja sht e sakt apo jo. Tani ndrysho emrat e butonave n Start, Next, OK dhe Stop, ju mund ta bni kt duke ndryshuar prkatsisht titujt prkats. Ju duhet t vizatoni nj vij dhe t futni nj imazh n image box si paraqitet n programin msipr. Tani le t shikojm kodinm: Private Sub Stop_Click() End End Sub Private Sub Text1_Change() End Sub Sub Start_Click() ' To get any random integers from 0 to 100 Randomize Timer firstNum = Int(Rnd * 100) + 1 secondNum = Int(Rnd * 100) + 1

58

MSc.GenciBerati

PrincipetVisualBasic 6.0

x.Text = Str(firstNum) y.Text = Str(secondNum) End Sub Private Sub Picture1_Click ( ) End Sub Private Sub OK_Click( ) If z.Text = x.Text + y.Text Then paraqit.Caption = "Correct" Image2.Visible = "true" Line1.Visible = "true" Else paraqit.Caption = "Wrong" Image2.Visible = "false" Line1.Visible = "false" End If End Sub Private Sub Next_Click() z.Text = "" paraqit.Caption = "" Start_Click End Sub Nse ju doni q prdoruesi t shtyp tastin Enter pasi t shkruaj prgjigjen, duhet t shkruani nj procedur pr keyPress event si m posht Private Sub z_KeyPress(KeyAscii As Integer) If (KeyAscii = 13) Then OK_Click End If End Sub Kur KeyAscii=13 do t thot tasti Enter Pasi t ekzekutohet programi nga prdoruesi duhet t shtypet butoni Start. Vendosni dy numra n dy textboxet e para. Perdoruesi duhet t fus prgjigjen dhe t shtyp butonin OK. Prdoruesi do t njoh n se prgjigja sht e sakt apo e gabuar n label3. Pr ta prfunduar, shtypni butonin Stop. N kt program ju duhet t dini se far sht funksioni Rnd dhe Int. Rnd jep nj numr t fardoshm mes 0 dhe 1, kurse Int jep numrin e plot m t afert t numrit t dhn.

59

MSc.GenciBerati
Shmbull: if Rnd=0.7423 100*Rnd=74.23 Int(100*Rnd)=74

PrincipetVisualBasic 6.0

Nga kombinimi i funksioneve Rnd dhe Int, ne mund t gjenerojm numra t plot t do rendi. Funksioni Str$ prdoret pr t konvertuar nj numr n tekst, kurse funksioni Val konverton tekstin n numr. Provo t implementosh n Visual Basic programin m sipr.

60

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 8:

M tepr pr Kontrollin e programit

8.1 Select Case N qoft se ju keni shum kushte, prdorimi i If..Then..Else mund t mos jet shum i prshtatshem. Pr kushte logjike t prsrotura sht m mir t prdoret Select Case Formati sht: Select Case shprehje Case vler1 Bllok i n j ose m shume instruksioneve t Visual Basic Case vler2 Bllok i n j ose m shume instruksioneve t Visual Basic Case vler3 Bllok i n j ose m shume instruksioneve t Visual Basic Case vler4 . . . Case Else Bllok i n j ose m shume instruksioneve t Visual Basic End Select * Tipi i t dhnave t prdorura n shprehje duhet ti korrespondoje asaj t Case selekt. 8.2 Shmbull Shmbull 8.1 Ekzaminimi i gradve

61

MSc.GenciBerati
Dim grade As String Private Sub Llogarit_Click( ) grade=txtgrade.Text Select Case grade Case "A" rezultat.Caption="Shklqyeshm" Case "A" rezultat.Caption="Shum mir" Case "B" rezultat.Caption="Mir" Case "C" rezultat.Caption="Kalueshm" Case Else rezultat.Caption="Dshtim" End Select

PrincipetVisualBasic 6.0

*Shikoni q grade sht variabl string, kshtu edhe vlerat e case select jan t tilla si p.sh. A. Shmbull 8.2 Dim nota As Single Private Sub Llogarit_Click() 'Ekzaminimi i notave Not = not.Text Select Case not Case Is >= 85 koment.Caption = "Shklqyeshm" Case Is >= 70 koment.Caption = "Mir" Case Is >= 60 koment.Caption = "Mbi mesatare" Case Is >= 50 koment.Caption = "Mesatar" Case Else koment.Caption = "Duhet t punosh m shum" End Select End Sub

62

MSc.GenciBerati

PrincipetVisualBasic 6.0

*Ne prdorim ktu Is pr t imponuar konditn. Kjo prdoret zakonisht pr t dhnat numerike. Shmbull 8.3 Shmbulli 8.2 mund t rishkruhen si m posht: . Dim not As Single Private Sub Llogarit_Click() 'Ekzaminimi i notave Not = not.Text Select Case not Case 0 to 49 koment.Caption = "Duhet t punosh m shum" Case 50 to 59 koment.Caption = "Mesatar" Case 60 to 69 koment.Caption = "Mbi mesataren" Case 70 to 84 koment.Caption = "Mir" Case Else koment.Caption = "Shklqyeshm" End Select End Sub

63

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 9

Looping Visual Basic lejon q nj proedur t prsritet aq her sa mund ta lejoj proesori. Kjo quhet zakonisht looping. 9.1 Do Loop Formatet jan: a) Do While kondit Bllok instruksionesh t Visual Basic Loop b) Do Bllok instruksionesh t Visual Basic Loop While kondit c) Do Until kondit Bllok instruksionesh t Visual Basic Loop d) Do Bllok instruksionesh t Visual Basic Loop Until kondit

Shmbull 9.1 Do while numrator <=1000 num.Text=numrator numrator = numrator +1 Loop * Shmbulli i msiprm rrit variablin numerator derisa ai t jet>1000. Shmbulli i msiprm mund t shkruhej edhe

64

MSc.GenciBerati
Do num.Text= numrator numrator = numrator +1 Loop until numrator >1000 9.2 For....Next Loop Formati sht:

PrincipetVisualBasic 6.0

For numrator =fillimNumer to fundNumer (Hap i rritjes) Nj ose m shum instruksione t Visual Basic Next Shmbull: (a) For numrator =1 to 10 shfaq.Text= numrator Next For numrator =1 to 1000 step 10 numrator = numrator +1 Next For numrator =1000 to 5 step 5 numrator = numrator 10 Next

(b)

(c)

65

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 10

Njohuri mbi funksionet e Visual Basic Pjesa I Funksionet jane t ngjashme me procedurat normale, por qllimi kryesor i funksioneve sht t pranoje disa inpute dhe ti kaloj ato n programin kryesor pr t prfunduar ekzekutimin. Jan dy tipe funsionesh, funksionet builtin (ose funksionet e veta) dhe funksiopnet e krijuara nga programatori. Format i prgjithshm i funksionit sht: EmrFunksioni(argument) ku argumentet jan vlera q kalojn n funksion . N ket kapitull ne po mundohemi t msojm dy nga funksionet m t prdorshme t Visual Basic q jan funksionet MsgBox() dhe InputBox().

10.1 Funksioni MsgBox ( ) Qllimi i funksionit MsgBox sht t krijoj nj mesazh t menjhershm dhe t detyroj prdoruesin t klikoj n nj buton para se ai t vazhdoj. Ky mesazh ka formatin e mposhtm. MsgJuaj=MsgBox(Replika, Vlera e Stilit, Titulli) Argument ii par,Replika, do tju paraqes mesazhin e duhur. Vlera e stilit do tju prcaktoje se far tipe komandash do t shfaqen n kutine e mesazhit, referoju Tabls 10.1 pr tippet e butonave q mund t shfaqen. Titulli do t shfaq titullin e kutise s mesazhit.

66

MSc.GenciBerati

PrincipetVisualBasic 6.0
Tabla 10.1: Vlerat e stileve

Vlera e stilit 0 1 2 3 4 5

Emri konstant vbOkOnly vbOkCancel vbAbortRetryIgnore vbYesNoCancel vbYesNo vbRetryCancel

Butoni i shfaqur Ok butoni Butoni Ok dhe Cancel Butoni Abort, Retry dhe Ignore. Butoni Yes, No dhe Cancel Butoni Yes dhe No Butoni Retry dhe Cancel

Pr ta br programin m t thjesht pr pr ta lexuar, n vnd t numrit perkats ne mund t prdorim emrit konstant. N fakt, VB6 do t na shfaq automatikisht nj list me emrat constant kun e mund t zgjedhim nj. shembull: MsgJuaj=MsgBox( "Kliko OK pr t vazhduar", 1, "Mnuja Kryesore") dhe MsgJuaj=Msg("Kliko OK pr t vazhduar". vbOkCancel,"Menuja Kryesore") jan t njjt. MsgJuaj sht nj variabl i cili mban ato vlera q jep funksioni MsgBox ( ). Vlerat jan t prcaktuara nga tipi i butonit q ka klikuar prdoruesi i programit q p krijojm. Ky duhet t deklarohet si Integer n procedur apo n general declaration. Tabla 10.2 tregon vlerat n correspondence t emrit constant dhe butonit. Tabla 10.2 : Vlerat e funksionit MsgBox() dhe Butonat e komandave Vlera 1 2 3 4 5 6 7 Emri Konstant vbOk vbCancel vbAbort vbRetry vbIgnore vbYes vbNo Butoni i shtypur Butoni Ok Butoni Cancel Butoni Abort Butoni Retry Butoni Ignore Butoni Yes Butoni No

67

MSc.GenciBerati
Shembull 10.1

PrincipetVisualBasic 6.0

Ndrfaqja grafike: Vizatoni tre butona komandash dhe nj etiket (label) si n Figurn 10.1

Figura 10.1

Produra pr butonin Test n ngjarjen e klikimit mbi kt buton sht: Private Sub Test_Click() Dim testmsg As Integer testmsg = MsgBox("Kliko n test", 1, "Mesazhi i testimit") If testmsg = 1 Then shfaq.Caption = "Testimi i suksesshm" Else shfaq.Caption = "Testimi i dshtuar" End If End Sub Kur nj prdorues klikon n butonin test, do t na shfaqet imazhi si n Figuren 10.2. Nse prdoruesi i programit klikon n butonin OK, ather do t na shfaqet mesazhi Testimi i suksesshm dhe kur

68

MSc.GenciBerati

PrincipetVisualBasic 6.0

prdoruesi t klikoj n butonin cancel do t shfaqet mesazhi Testimi i deshtuar. Figure 10.2

Pr t br q mesazhi t duket sa m i plot, ju mund t shtoni nj ikon prapa mesazhit t shkruar n kutin e mesazhit. N Visual Basic kemi n dispozicion katr tipe ikonash si n Tabln 10.3

Tabla 10.3 Vlera 16 32 48 64 Emri Konstantit vbCritical vbQuestion vbExclamation vbInformation Ikona

Shembull 10.2 N kt shmbull do t shfaqet mesazhi si n figuren 10.3:

69

MSc.GenciBerati
Figura 10.3

PrincipetVisualBasic 6.0

Ju mund t ndrtoni t njjtiten ndrfaqje si n shmbullin 10.1, por modifikoni kodin si m posht Private Sub test2_Click() Dim testMsg2 As Integer testMsg2 = MsgBox("Kliko mbi Test", vbYesNoCancel + vbExclamation, "Mesahi i testimit") If testMsg2 = 6 Then shfaq2.Caption = "Testimi i suksesshm" ElseIf testMsg2 = 7 Then shfaq2.Caption = "A jeni i sigurt?" Else shfaq2.Caption = "Testimi i dshtuar" End If End Sub

10.2 Funksioni InputBox( ) Funksioni InputBox( ) ba shfaq nj kuti mesazhi n t ciln prdoruesi mund t shnoj nj vler apo nj mesazh n formn e tekstit. Format i deklarimit t ktij funksioni sht: MesazhiIm=InputBox(Replika, Titulli, Teksti_definitiv, pozicionix, pozicioniy) MesazhiIm hst nj variabl i tipit variant, por shpesh deklarohet si string, i cili pranon vlera nga prdoruesi n mnyr interative. Argumentet shpjegohen si m posht: Replika Titulli Mesazhi i paraqitur normalisht sin j pyetje. Titulli i Input Box.

70

MSc.GenciBerati

PrincipetVisualBasic 6.0

Teksti_definitiv Teksti q shfaqet n kutin e inputit t ciln prdoruesi mund ta prdori Pozicionix dhe Pozicioniy jan koordinatat e kutis sinput box. Shmbull 10.3 Ndrfaqja grafike Figura 10.4

Proedura pr butoni OK n ngjarjen e klikimit mbi kt buton. Private Sub OK_Click() Dim MsgPerd As String MsgPerd = InputBox("Cili sht measazhi juaj?", "Mesazhi i forms Enter", "Fut mesazhi tuaj ktu", 500, 700) If MsgPerd <> "" Then mesazh.Caption = MsgPerd Else message.Caption = "No Message" End If End Sub Kur nj prdorues klikon n butonin OK, do t shfaqet mesazhi si n figuren 10.5. M pas prdoruesi duke shkruar mesazhin dhe duke klikuar n butonin OK, nxjerr mesazhin e shkruar n kutin prkatse. Ndrsa nse shtypt Cancel ather do t shfaqet Nuk ka mesazh.

71

MSc.GenciBerati

PrincipetVisualBasic 6.0

72

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 11

Njohuri mbi funksionet e Visual Basic Pjesa II 11.1 Krijimi i n j Funskioni nga programuesi Format i prgjithshm i deklarimit t nj funksioni nga programuesi: Public Function EmriFunksionit (Argument As TipiDhans,..........) As TipiDhans Ose Private EmriFunksionit (Argument As TipiDhans,..........) As TipiDhans * Public do t thot q funksioni sht i aplikueshm n t gjith programin kurse Private tregon se funksioni sht i aplikueshm vetn n procedurn ose modulin konkret, n prdorim. Shmbull 11.1 N kt shmbull, nj prdorues mund t llogarite sasin e lekve qe ka n baz t interesit banker dhe numrit t viteve. Llogaritja bazohet n koefientin e interesit.

73

MSc.GenciBerati

PrincipetVisualBasic 6.0

Public Function VA(PV As Variant, i As Variant, n As Variant) As Variant 'Formula pr t llogarit Vlern e Ardhshme (VA) 'PV shenon Vleren e tashme (Present Value) VA = PV * (1 + i / 100) ^ n End Function Private Sub llogarit_Click() 'Kjo procedure do t llogarit Vlern e Ardhshme Dim VlArdh As Variant Dim VlPres As Variant Dim interes As Variant Dim period As Variant VlPres = PV.Text interes = rate.Text period = vitet.Text VlArdh = FV(VlPres, interes, period) MsgBox ("Vlera e Ardhme sht " & VlArdh) End Sub Shembull 11.2 Program i mposhtm llogarit n mnyr automatike gradt n varsi t notave q marrin nxnsit.

74

MSc.GenciBerati

PrincipetVisualBasic 6.0

Public Function grade(nota As Variant) As String Select Case nota Case Is >= 80 grade = "A" Case Is >= 70 grade = "B" Case Is >= 60 grade = "C" Case Is >= 50 grade = "D" Case Is >= 40 grade = "E" Case Else grade = "F" End Select End Function Private Sub llogarit_Click() grading.Caption = grade(nota) End Sub Private Sub End_Click() End End Sub

75

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 12

Krijimi i Funksioneve t Visual Basic pr Microsof Excel 12.2 Pse sht e nevojshme t krijohen funksione nga prdoruesi n MS Excel? Ju mund t krijoni funksionet tuaja prve atyre t ofruara nga Spreadsheet i Excelit, t cilat duhet thne se jan t limituara. Kto funksione mund t jen shum t fuqishme nqoft se ju do t dini si ti krijoni dhe ti prdorni. Nj nga arsyet m kryesore prse ne duhet t krijojme nj funksion sht pr t br t mundur t organizojm mjedisin e spreadsheetit pr nevojat tona. Pr shmbull ne mund t kemi nevoj t llogarisim prqindjen e kamarierve t nj lokali n varsi t xhiros ditore e cila sht mjaft komplekse nse nuk prdorim nj funksion tonin, por vetm ato t prcaktuara nga Excel. Shikoni n tablen m posht: Tabla 12.1: Prqindja e kamarierve n varsi t xhiros ditore
Xhiro(Lek) <500 500<1000 1000<2000 2000<5000 >5000 Prqindja 3% 6% 9% 12% 15%

N shmbullin m sipr, nse nj kamarier realizon nj xhiro prej 6000 leksh, ai do t shprblehet me 6000x12%=720.00.mund t shkruhet nj funksion n Visual Basic i cili t llogarit automatikisht vler e prqindjes si m posht: Function Prq(Xhiro_V As Variant) as Variant If Xhiro_V <500 Then

76

MSc.GenciBerati

PrincipetVisualBasic 6.0

Prq=Xhiro_V*0.03 Elseif Xhiro_V>=500 and Xhiro_V <1000 Then Prq = Xhiro_V*0.06 Elseif Xhiro_V >=1000 and Xhiro_V <2000 Then Prq = Xhiro_V *0.09 Elseif Xhiro_V >=200 and Xhiro_V <5000 Then Prq = Xhiro_V *0.12 Elseif Xhiro_V >=5000 Then Prq = Xhiro_V *0.15 End If End Function 12.2 Prdorimi i Microsoft Excel Visual Basic Editorit P}r t krijuar nj funksion t prdoruesit n MS Excel, ju mund t klikoni n tools, select macro dhe pastaj klikoni n Visual Basic Editor si paraqitet n Figurn 12.1 Figura 12.1: Hapja e Ms_Excel Visual Basic Editor

77

MSc.GenciBerati

PrincipetVisualBasic 6.0

Pasi keni klikuar n Visual Basic Editor, ai do tju paraqitet si n figuren 12.2. pr t krijuar nj funksion, shkruani si n shembullin e seksionit 12.1 m sipr funksionin ose tamam si n figuren m posht 12.2. Pastaj ruani skedarin dhe kthehuni n dritaren e Excelit.

Figura 12.2 : Editori Visual Basic

N dritaren e Excelit (preadsheetin tuaj), vendosni n dy qeliza t cilat i zgjidhni vet Xhiro Ditore dhe Prqindja e Kamarierit. SI tregohet n figuren 12.3, vendos funksionin Prq n qelizn C4 dhe referojuni vlers s qelizs B4, duke prdorur formatin Prq(B4). fardo vlere q t vedoset n qelizn B4 menjher do t reflektoj n qelizn C4 ku sht vendosur funksioni Prq. Pr rreshtat m posht sht e mjaftueshme vetm t kopjohet formula me trheqje (Drag) n cepin e djathte posht qelizes C4 posht n qelizat e krkuara dhe menjher nj table e kndhme dhe e rregullt do t na shfaqet duke treguar prqindjet

78

MSc.GenciBerati

PrincipetVisualBasic 6.0

automatikisht. Vlerat n kt table mund t ndryshohen automatikisht n varsi t xhirove ditore.

Figura 12.3: Dritarja e MS Excel pr Xhiron Ditore t Kamarierve

79

MSc.GenciBerati
Kapitulli 13: Tabelat (Arrays)

PrincipetVisualBasic 6.0

13.1 Njohja me Tabelat Me prkufizim, nj array sht nj list variablash t gjitha t t njjtit tip dhe me t njjtin emr. Kur ne punojm vetm me nj fush, ne na duhet vetm nj variabl. N qoft se n ekemi t bjm me nj list fushash t t njjtit tip (p. sh. String) ather kshillohet t deklarohet nj array (table) variablash n vend q t deklaronim nga nj variab\l pr seciln fush. Pr shmbull n se do t duhej t trajtonim njqind emra, n vend q t deklaronim 100 variabla , ne deklarojm vetm nj array. Ne mundet q t dallojm seciln fush n array duke shfrytzuar vlern e indeksit pr seciln fush. Pr shmbull Emri(1), Emri(2), Emri(3).etj.

13.2 Deklarimi i Tabels Ne mund t prdorim instruksionin Public ose Dim pr t deklaruar nj Tabel n t njjtn rrug me t ciln deklarojm nj variabl t singl. Instruksioni Public e deklaron variablin Array t mundshm pr tu prdorur n t gjitha modulet e aplikacionit. Instruksioni Dim e deklaron t prdorshm vetm n proceduren aktuale n prdorim. Format ii prgjithshm i deklarimit t tables n Visual Basic sht: Dim EmerTabele(subs) as Tipi Ku subs tregon indeksin e fundit n array. Shmbull 13.1 Dim EmerKlienti(10) as String Ky shembull deklaron nj table (array) q konsiston n 10 elemente. Nse n instruksionin e deklarimit shfaqet 1 ather elementet fillojn nga EmriKlientit(1) deri n EmriKlientit(10) prndryshe do t jen 11 elemente t mundshme n table EmriKlientit(0) deri EmriKlientit(10)

80

MSc.GenciBerati
Shembull 13.2

PrincipetVisualBasic 6.0

Dim Numro(100 to 500) as Integer Deklaron nj table e cila konsiston n elementin e par q fillon nga Numro(100) dhe mbaron me Numro(500) 13.3 Programe shembuj Ndrfaqja grafike

e Kodi Dim EmriStudentit(10) As String Dim num As Integer Private Sub shtoEmr() For num = 1 To 10 EmriStudentit(num) = InputBox("Fut Emrin e Studentit", "Fut Emr", "", 1500, 4500)

81

MSc.GenciBerati
If EmriStudentit(num) <> "" Then Form1.Print EmriStudentit(num) Else End End If Next End Sub Private Sub Exit_Click() End End Sub Private Sub Start_Click() Form1.Cls shtoEmr End Sub

PrincipetVisualBasic 6.0

Programi m sipr pranon t dhna n kutin e mesazhit dhe pastaj i shfaq n formn prkatse. Si edhe shihet ky program lejon q t futen n form vetm 10 emra sa her q klikohet butoni start Ndrfaqja grafike

Kodi

82

MSc.GenciBerati

PrincipetVisualBasic 6.0

Dim EmriStudentit(10) As String Dim num As Integer Private Sub shtoEmr( ) For num = 1 To 10 ErmiStudentit(num) = InputBox("Fut emrin e studentit") List1.AddItem ErmiStudentit (num) Next End Sub Private Sub Start_Click() shotEmr End Sub Program ii msiprm fut emrat e studentave nga kutia e mesazhit inbox dhe i vendos ato n nj listbox.

83

MSc.GenciBerati
Kapitulli 14: Puna me skedart

PrincipetVisualBasic 6.0

14.1 Prezantim Deri n kapitullin 13 ne kemi par programe t cilt pranojn t dhna t cilat prezantohen n kohen e ekzekutimit, kur programi prfundon, te dhenat do t humbin. sht e mundur q t ruhen n mnyr t prhershme t dhnat q pranohen n programin e Visual Basic n nj njsi memorje t prhershme si Hard Disk Drive p.sh. ose Disket bile edhe n CDRW. N ket kapitull do t msojm se si t krijojm skedar duke i ruajtur ato n njsit e memorjes s prhershme dhe se si ti trheqim t dhnat nga kto skedar n programin ton t krijuar me Visual Basic. 14.2 Krijimi i skedarve Pr t krijuar skedar n Visual Basic prdorim komandat n formatin m posht. Open "emrskedari" For Output As numerskedari do skedar duhet t ket nj emer dhe nj numr pr tu identifikuar. P}r emrin e skedarit , ju duhet t specifikoni edhe pozicionin ne t cilin ai do t ndodhet (path). Pr shembull Open "c:\My Documents\shembull.txt" For Output As 1 Do t krijoj nj skedar tekst me emrin shembull.txt n direktorin My Document. Numri shoqrues i ketij skedari sht 1. N qoft se ju doni ta krijoni ket skedar n disket (drive A) thjesht ndrysho adresn e skedarit Open "A:\shembull.txt" For Output As 1 N se ju doni t krijoni nj skedar HTML thjesht ju duhet t ndrroni prapashtesn e skedarit si m posht Open "c:\My Documents\shembull.html" For Output As # 2 14.2.1 Program shembull: Krijimi in j skedari tekst Private Sub create_Click() Dim intMsg As String Dim StudentEmri As String Open "c:\My Documents\shembull.txt" For Output As 1 intMsg = MsgBox("Skedari shembull.txt hapet") StudentEmri = InputBox("Fut emrin e studentit")

84

MSc.GenciBerati

PrincipetVisualBasic 6.0

Print 1, StudentEmri intMsg = MsgBox("Duke shkruar " & StudentName & " tek shembull.txt ") Close #1 intMsg = MsgBox("Skedari shembull.txt mbyllet") End Sub * Programi mesiper do t krijoje skedarin shembull.txt ne dosjen My Document t gatshm pr t pranuar inpute nga prdoruesi. do input t dhnash do t ruhen n kt skedar tekst.

14.3 Leximi i skedarve Pr t lexuar skedarin e krijuar me instruksionet e seksionit 14.2 ju mund t prdorn instruksionin input. Megjithat ne mund t lexojm skedart n varsi t formatit me t cilin ata jan shkruar. Ju mund t hapni skedarin ne baz t numrit t tij prkats dhe variablit qe mban t dhenat Ne gjithashtu duhet t prdorim instruksioni DIM pr t deklaruar variablin. 14.3.1 Program shembull: Leximi i skedarit Private Sub Leximi_Click() Dim variabel1 As String Open "c:\My Documents\shembull.txt" For Input As 1 Input 1, variabel1 Text1.txt = variabel1 Close 1 End Sub * Ky program do t hapi skedarin shembull.txt pr t lexuar t dnat dhe pr ti hedhur n skedarin destinacion text1.txt.

85

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 15: Krijimi i nj aplikacioni multimedial Pjesa 1 Ne mund t krijojm nj sr aplikacinesh multimedial n Visual Basic. Pr shembull mund t ndrtojm apliakcione t cilat lexojn skedart audio, CD, VCD, skedart video etj. P}r t qn t aft t luajm skedart multimedial nprmjet nj aplikacioni n Visual Basic ne duhet t futim Microsoft Multimedia Controller n aplikacionin e VB q po krijom. Microsoft Multimedia Controller normalisht nuk sht prfshir n kutine e intrumenteve (toolbox), keshtu q ju duhet t shtoni MM control duke shtypur Ctrl+T dhe duke e zgjedhur nga kutia e dialogut prkatse.

15.1 Krijimi in j CD playeri (a) Ndrfaqja grafike

Private Sub Form_Load() 'Pozicionon formn n qendr Left = (Screen.Width Width) \ 2 Top = (Screen.Height Height) \ 2 'Hap CD myCD.Command = "Open"

86

MSc.GenciBerati
End Sub Private Sub myCD_StatusUpdate() 'Jep numrin e trackut trackNum.Caption = myCD.Track End Sub Private Sub Next_Click() myCD.Command = "Next" End Sub Private Sub Play_Click() myCD.Command = "Play" End Sub Private Sub Previous_Click() myCD.Command = "Prev" End Sub Private Sub Stop_Click() myCD.Command = "Stop" End Sub Private Sub Exit_Click() End End Sub

PrincipetVisualBasic 6.0

87

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 16: Krijimi i aplikacionit multimedialPjesa2 N kapitujt e mparshm ne kemi programuar nj CD player. Tani, me disa modifikume, ne do t rtansformojm ket CD player n audio file player (luajtes t skdarve audio). Ky lexues i ktyre skedarve duhet t krijohet n nj rrug t till q t krkoj n driverat tuaj pr skedar WAVE dhe midi dhe ti luaj ato. N ket projekt ne duhet t futim nj ComboBox, nj DriveListBox, nj DirListBox, nj TextBox dhe nj FileListBox n formn ton.Un do t prpiqem t tregoj funksionin e secilit kontroll t prmendur m sipr. Pastaj, ju duhet t futni Microsoft Multimedia Control(MMControl) n formn tuaj, Ju mund ta bni ket MMControl t dukshm ose t padukshm n kohen e ekzekutimit t aplikacionit tuaj. Un do t preferoja t mos e shfaq dhe t prdor keshtu command butona pr ta kontrolluar playerin. Kontrollet e formes duhen prkatsisht: ComboBox pr t shfaqur dhe pr t aktivizuar sesioni e tipeve t ndryshme t skedarve. DriveListBox pr t mundsuar zgjedhjen e driverave t ndryshm n kompjuterin tuaj. DirListBox pr t shfaqur direktorit TextBox pr t shfaqur skedart e selektuar. FileListBox pr t shfaqur skedart e vlefshem pr tu ekzekutuar Duhet t shkruhen kode prkatse pr t koordinuar t gjitha kontrollet e msiprme, n mnyr q aplikimi t punoj sakt. Programi duhet t rrjedh n kt rrug logjike: Step 1: Prdoruesi zgjedh tipin e skedarve q dshron t luaj Step2: Pdoruesi zgjedh driverin ku mendon se ndodhe skedar t cilet krkon tI ekzekutoj. Step 3:Prdoruesi shikon n direktorit dhe nn direktorit e driverit t zgjedhur pr ndonj skedar t tipit t zgjedhur n Hapin 1. skedart do t paraqiten n FileListBox. Step 4: Prdoruesi zgjedh skedarin nga FileListBox dhe klikon butonin Play Step 5: Prdoruesi shtyp butonin Stop pr t ndaluar ekzekutimin e skedarit audio dhe butonin Exit pr t prfunduar aplikacionin. Ndrfaqja grafike

88

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kodi Private Sub Combo1_Change() ' pr t prcaktuar tipin e skedarit If ListIndex = 0 Then File1.Pattern = ("*.wav") ElseIf ListIndex = 1 Then File1.Pattern = ("*.mid") Else Fiel1.Pattern = ("*.*") End If End Sub

Private Sub Dir1_Change() 'Pr t ndrruar direktorit dhe nndirektorit (ose folders dhe subfolders) File1.Path = Dir1.Path If Combo1.ListIndex = 0 Then File1.Pattern = ("*.wav") ElseIf Combo1.ListIndex = 1 Then

89

MSc.GenciBerati
File1.Pattern = ("*.mid") Else File1.Pattern = ("*.*") End If End Sub Private Sub Drive1_Change() 'Pr t ndrruar driverat Dir1.Path = Drive1.Drive End Sub Private Sub File1_Click() If Combo1.ListIndex = 0 Then File1.Pattern = ("*.wav") ElseIf Combo1.ListIndex = 1 Then File1.Pattern = ("*.mid") Else File1.Pattern = ("*.*") End If If Right(File1.Path, 1) <> "\" Then filenam = File1.Path + "\" + File1.FileName Else filenam = File1.Path + File1.FileName End If Text1.Text = filenam End Sub

PrincipetVisualBasic 6.0

Private Sub Form_Load() 'Pr t pozicionuar n qndr t faqes start up Audioplayerin Left = (Screen.Width Width) \ 2 Top = (Screen.Height Height) \ 2 Combo1.Text = "*.wav" Combo1.AddItem "*.wav" Combo1.AddItem "*.mid" Combo1.AddItem "All files"

90

MSc.GenciBerati
End Sub Private Sub AudioPlayer_Click() End Sub Private Sub play_Click() 'Pr t luajtur skedart WaveAudio ose Midi Command2_Click If Combo1.ListIndex = 0 Then AudioPlayer.DeviceType = "WaveAudio" ElseIf Combo1.ListIndex = 1 Then AudioPlayer.DeviceType = "Sequencer" End If AudioPlayer.FileName = Text1.Text AudioPlayer.Command = "Open" AudioPlayer.Command = "Play" End Sub

PrincipetVisualBasic 6.0

Private Sub stop_Click() If AudioPlayer.Mode = 524 Then Exit Sub If AudioPlayer.Mode <> 525 Then AudioPlayer.Wait = True AudioPlayer.Command = "Stop" End If AudioPlayer.Wait = True AudioPlayer.Command = "Close" End Sub Private Sub Exit_Click() End End Sub

91

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 17: Krijimi i aplikacionit multimedialPjesa3 N kapitullin 16, ne krijuam nj audio player. Tani me disa transformime do t kthejm audio playerin n nj paraqites fotografish. Ky lexues fotografish do t ndrtohet n nj mnyr t till q t krkoj pr t gjitha tipet e skedarve grafik n driverat e kompjuterit tuaj. Njlloj si n projektin paraardhe n kt projekt do t na nevoitet nj ComboBox, nj DriveListBox, nj DirListBox, nj TextBox dhe nj FileListBox n formn tuaj. Un do t mundohem t tregoj shkurtimisht funksionin e secilit prej kontrollerave t permendur. ComboBox Shrben pr t paraqitur dhe aktivizuar sesionin e skedarve t tipeve t ndryshme.. DriveListBox HSrben pr t mundsuar zgjedhjen e driverave t mundshm n kompjuterin tuaj (p.sh. driverin c:\ ose d:\) DirListBox Pr t shfaqur direktorit. TextBox Pr t shfaqur skedart e zgjedhur. FileListBox Pr t shfaqur skedart q jan t munshm pr tu lujt. Pr t koordinuar kontrollerat e prmendur m sipr dhe n mnyr q programi t funskionoj si duhet duhet t shkruhet kodi prkats. Programi duhet t ndjeki kt rrjedh logjike. Hapi1: Prdoruesi zgjedh tipin e skadarit q dshron t ekzekutoj. Hapi 2:Prdoruesi zgjedh driverin n t cilin mund t ndodhet skedarik grafik.. Hapi 3:Prdoruesi kontrollon npr direktorit dhe nndirektorit pr skedar t specifikuar n hapin 1. Skedart duhet t afishohen n FileListBox. Hapi 4: P}rdoruesi zgjedh skedarin nga FileListBox dhe klikon n butonin Shfaq. Hapi 5: Prdoruesi klikon n butonin Exit pr t dal nga alikacioni. Ndrfaqja grafike

92

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kodi Private Sub Form_Load() Left = (Screen.Width Width) \ 2 Top = (Screen.Height Height) \ 2 Combo1.Text = "T gjith skedart grafik" Combo1.AddItem "All graphic files" Combo1.AddItem "All files" End Sub Private Sub Combo1_Change() If ListIndex = 0 Then File1.Pattern = ("*.bmp*.wmf*.jpg*.gif") Else Fiel1.Pattern = ("*.*") End If End Sub

93

MSc.GenciBerati

PrincipetVisualBasic 6.0

Private Sub Dir1_Change() File1.Path = Dir1.Path File1.Pattern = ("*.bmp*.wmf*.jpg*.gif")

End Sub Private Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub Private Sub Exit_Click() End End Sub Private Sub File1_Click() If Combo1.ListIndex = 0 Then File1.Pattern = ("*.bmp*.wmf*.jpg*.gif") Else File1.Pattern = ("*.*") End If If Right(File1.Path, 1) <> "\" Then filenam = File1.Path + "\" + File1.FileName Else filenam = File1.Path + File1.FileName End If Text1.Text = filenam End Sub

Private Sub play_Click() MMPlayer.FileName = Text1.Text End Sub

94

MSc.GenciBerati

PrincipetVisualBasic 6.0

Private Sub show_Click() If Right(File1.Path, 1) <> "\" Then filenam = File1.Path + "\" + File1.FileName Else filenam = File1.Path + File1.FileName End If picture1.Picture = LoadPicture(filenam) End Sub

95

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 18: Krijimi i nje aplikacioni multimedial Pjesa 4 Nj Multimedia Player N kapitullin 16, ne kemi krijuar nje audi player. Tani, me disa modifikime, ne do t transformojm kt audio player n nj muldtimedia player i cili mund t ekzekutoj t gjitha llojet e skedarve video prve atyre audio. N kt projekt ju duhet te perdorni n formn tuaj nj ComboBox, nj DriveListBox, nj DirListBox, nj TextBox ,nj FileListBox dhe nj kuti picture (picture box) pr t luajtur skedarin audiovideo. Un do t prshkruaj funksionin e secils prej kontrolleve t prmendura m sipr. Control(MMControl) n formn tuaj, Ju mund ta bni ket MMControl t dukshm ose t padukshm n kohen e ekzekutimit t aplikacionit tuaj. Un do t preferoja t mos e shfaq dhe t prdor keshtu command butona pr ta kontrolluar playerin. ComboBox Shrben pr t paraqitur dhe aktivizuar sesionin e skedarve t tipeve t ndryshme.. DriveListBox Shrben pr t mundsuar zgjedhjen e driverave t mundshm n kompjuterin tuaj (p.sh. driverin c:\ ose d:\) DirListBox Pr t shfaqur direktorit. TextBox Pr t shfaqur skedart e zgjedhur. FileListBox Pr t shfaqur skedart q jan t munshm pr tu lujt. Pr t koordinuar kontrollerat e prmendur m sipr dhe n mnyr q programi t funskionoj si duhet duhet t shkruhet kodi prkats. Programi duhet t ndjeki kt rrjedh logjike. Hapi1: Prdoruesi zgjedh tipin e skadarit q dshron t ekzekutoj. Hapi 2:Prdoruesi zgjedh driverin n t cilin mund t ndodhet skedari audio.. Hapi 3:Prdoruesi kontrollon npr direktorit dhe nndirektorit pr skedar t specifikuar n hapin 1. Skedart duhet t afishohen n FileListBox. Hapi 4: Prdoruesi zgjedh skedarin nga FileListBox dhe klikon n butonin Luaj. Hapi 5: Prdoruesi klikon n butonin Stop dhe butonin Exit pr t dal nga alikacioni. Nderfaqja grafike

96

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kodi I programit Private Sub Form_Load() Left = (Screen.Width Width) \ 2 Top = (Screen.Height Height) \ 2 Combo1.Text = "*.wav" Combo1.AddItem "*.wav" Combo1.AddItem "*.mid" Combo1.AddItem "*.avi*.mpg" Combo1.AddItem "All files" End Sub Private Sub Combo1_Change() If ListIndex = 0 Then File1.Pattern = ("*.wav")

97

MSc.GenciBerati
ElseIf ListIndex = 1 Then File1.Pattern = ("*.mid") ElseIf ListIndex = 2 Then File1.Pattern = ("*.avi*.mpg") Else Fiel1.Pattern = ("*.*") End If End Sub

PrincipetVisualBasic 6.0

Private Sub Dir1_Change() File1.Path = Dir1.Path If Combo1.ListIndex = 0 Then File1.Pattern = ("*.wav") ElseIf Combo1.ListIndex = 1 Then File1.Pattern = ("*.mid") ElseIf Combo1.ListIndex = 2 Then File1.Pattern = ("*.avi*.mpg") Else File1.Pattern = ("*.*") End If End Sub Private Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub Private Sub Exit_Click() End End Sub Private Sub File1_Click() If Combo1.ListIndex = 0 Then File1.Pattern = ("*.wav") ElseIf Combo1.ListIndex = 1 Then File1.Pattern = ("*.mid") ElseIf Combo1.ListIndex = 2 Then File1.Pattern = ("*.avi*.mpg") Else

98

MSc.GenciBerati
File1.Pattern = ("*.*") End If If Right(File1.Path, 1) <> "\" Then filenam = File1.Path + "\" + File1.FileName Else filenam = File1.Path + File1.FileName End If Text1.Text = filenam End Sub

PrincipetVisualBasic 6.0

Private Sub MMPlayer_Click() End Sub Private Sub Picture1_Click() End Sub Private Sub play_Click() MMPlayer.FileName = Text1.Text MMPlayer.Command = "Open" MMPlayer.Command = "Play" MMPlayer.hWndDisplay = videoscreen.hWnd End Sub

Private Sub stop_Click() If MMPlayer.Mode = 524 Then Exit Sub If MMPlayer.Mode <> 525 Then MMPlayer.Wait = True MMPlayer.Command = "Stop" End If MMPlayer.Wait = True MMPlayer.Command = "Close" End Sub

99

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 19: Krijimi I nj aplikacioni me baz t dhnash n VB Pjesa e par Visual Basic na lejon ne t manaxhojm database te krijuar nga nj program tjetr pr database si jan p.sh. MS Access, Dbase, Paradox etj. N kt kapitull nuk do t merremi me mnyr ne si krijohen skedar database, por do t shohim se si do t mund t lidhim skedart database me mjedisin e VB. N shmbullin m posht ne do t krijojm nj aplikim database t thjesht i cili do t na lejoj ne t shohim ne rradhe emrat e klientve. Pr t krijuar kt aplikacion duhet t fusim kontrollin e t dhnave (data control) n form ne re t projektit ton. Vendoseni kt data control diku posht n form. Emrto kt data control me emrin data_navigator. Pr t qn t aft t prdorim data controllerin duhet ta lidhim at me ndonj database. Ne mund t krijojm nje database duke prdorur ndonj DBMS (database management systems), por un sugjeroj q t prdorim ndonj skedar database q instalohet bashke me programin Visual Basic. Le t zgjedhim NWIND.MDB si skedar database. Pr t lidhur data controlerin ton me kt databese, bni dopio klik n DatabaseName tek dritarja e propertive dhe zgjidh skedarin e siprprmendur NWIND:MDB. M tej bj dopio klik n RecordSource dhe zgjidh aty tabeln e klientave (customers) nga database. Ju mund t zgjidhni gjithashtu nj tjetr caption pr data controlerin, un kam zgjedhur Kliko pr t kontrolluar klientat. Pastaj ju mundt futni nj etiket (label) dhe t ndrroni caption pr ket label n Emri i klientit. Gjithashtu duhet t vendosni n forma edhe nj text box me emrin emr_klient, n menyr q kur t shtisim n rekordet e databasit ton aty t shfaqen emrat prkats t klientve. Ne duhet t lidhim kt txt box me data controlin ton. Pr kt duhet t hapim proprtin DataSource t txt boxit t forms ton. Menjher do t na shfaqet emri i data kontrollerit ton, t cilin ne duhet ta zgjedhim. Nuk mjafton vetm kaq pr t lidhur text boxin me klientat, ne duhet t lidhim edhe fushen n t ciln ndodhen klientat ne database me text box. Pr t realizuar kt hapin propertin DataField t text boxit to forms ton dhe zgjedhim fushn ContactName. Mbasi kemi realizuar veprimet si msipr shtypim butonin fF5 ose butonin Run. Ju do t mund t shtisni n t gjith emrat e klientave duke klikuar n shigjetn e data kontrollerit t forms.

100

MSc.GenciBerati
Ndrfaqja grafike

PrincipetVisualBasic 6.0

Ndrfaqja grafike (pas ekzekutimit tprogramit)

101

MSc.GenciBerati

PrincipetVisualBasic 6.0

Ju mund t shtoni edhe fusha t tjera nga databasei i zgjedhur po me t njjt metode n formn m sipr. P.sh. ju mund t shtoni aty adresn, qytetin, apo numrin e telefonit pr ti kontrolluar nga data kontrolleri yn. Pasi t keni shtuar text boxet q prmendm m sipr, forma jon pas ekzekutimit t programit do t ishte si m posht.

102

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 20: Krijimi I nj aplikacioni me baz t dhnash n VB Pjesa e dyt N kapitullin 19, ne msuam si t krijojm nj aplikacion database t thjesht duke prdorur data controller (data control). N kt kapitull do t prdorim t njjtin aplikacion, por do t prdorim disa komanda t tjera shtes. Data kontrolleri prmban disa metoda t cilat mund t prdoren pr t manipuluar databasein, p.sh. pr t levizut puntatorin n nj lokalizim t caktuar. M posht jan disa komanda t cilat ju mund ti prdorni pr t lvizur puntatorin. data_navigator.RecordSet.MoveFirst ' Lviz n rekordin e par data_navigator.RecordSet.MoveLast ' Lviz n rekordin e fundit data_navigator.RecordSet.MoveNext ' Lviz n rekordin tjetr data_navigator.RecordSet.Previous ' Lviz n rekordin paraardhs *shnim: data_navigator sht emir i data kontrollerit. N shembullin m posht ne dot prdorim katr komanda dhe do ti etiketojm si Rekodi i par, Rekodri tjetr, Rekordi paraardhs, Rekordi i fundit. Kta komand butona do t prdoren pr t naviguar n databasin ton pa prdorur butonat e data kontrollerit Private Sub Command2_Click() dtaBooks.Recordset.MoveFirst End Sub Private Sub Command1_Click() dtaBooks.Recordset.MoveNext End Sub Private Sub Command3_Click() dtaBooks.Recordset.MovePrevious End Sub Private Sub Command4_Click() dtaBooks.Recordset.MoveLast End Sub Pasi t ekzekutoni programin ju do t shikoni ndrfaqjen si m posht. N t ju do t mund t navigoni databasin prkat duke prdorur butonat e kontrollit.

103

MSc.GenciBerati

PrincipetVisualBasic 6.0

104

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 21: Krijimi i nj aplikacioni database n VB duke prdorur ADO kontrollin. N kapitujt 19 dh 20 ne kemi msuar sit krijojm aplikime me database n Visual Basic duke prdorur data kontrollerin. Megjithat data kontrolleri (Data control) nuk sht n t vrtet nj mjet shum fleksibl. Ai mund t punoj vetm me disa lloje t dhnash dhe duhet t punoj n mjedis strict Visual Basicu. Pr t eleminuar kt limit ju mund t prdorni nj data kontrolle m t fuqishm q sht ADO kontrolli. ADO sht shurtimi i ActiveX data objects. Meq ADO sht i bazuar n ActiveX , ai mund t funksionoj n platforma t ndryshme (n sisteme operimi t ndryshm) dhe gjuh t ndryshme programimi. Pr m tepr ADO kontrolleri mund t pranoj lloje t ndryshme t dhnsh si p.sh. t dhnat e paraqitura n browserat e internetit, tekst nga emailet, biles edhe imazhe grafik, prve informacineve relacionale dhe jo relacionale t databaseeve. Pr t prdorur ADO data kontrollerin ju duhet ta paraqitni at m par n toolbox (kutine e instrumenteve). Pr t br kt, thjesht shtypni Ctrl+T pr t hapur kutin e komponenteve dhe zgjidhni Microsoft ActiveX Data Control 6. Pas ksaj ju mund t proedoni ndrtimin e aplikimit t bazuar n ADO kontroller pr database. Shmbulli i mposhtm ilustron m s miri se si mund t ndrtoni nj aplikacion relativisht t fuqishm duke prdorur ADO data kontroller. Para s gjithash emrtoni formn tuaj frmTitullLibri dhe ndryshoni caption pr kt form n Titulli i Librit aplikim ADO. S dyti fut n form ADO data kontrollerin dhe emrtojeni at si adoLibra dhe ndrysho caption pr ket ADO kontroller n libr. Pastaj fut n form etiketat e duhura (labels), kutit e teksteve (text box) dhe butonat e komandave (commands buttons). Ndrfaqja mbas ekzekutimit (run time interface) pr kt aplikacion do t jet si m posht. Aty mund t realizoni futjen e rekordeve, fshirjen e tyre, ndryshimin e vlerave (update) si dhe mund t levizni npr rekordet e databasiit.

105

MSc.GenciBerati

PrincipetVisualBasic 6.0

Zgjedhjet (properties) pr t gjitha kontrollerat e prdorura n aplikacionin m sipr jan si m posht:


Form Name Form Caption ADO Name Label1 Name Label1 Caption Label 2 Name Label2 Caption Label3 Name Label3 Caption Label4 Name Label4 Caption Labe5 Name Label5 Caption Label6 Name Label6 Caption TextBox1 Name TextBox1 DataField frmTitullLibri Tutujt e Librave ADOApplication adoLibrat lblApp Book Titles lblTitle Title : lblYear Year Published: lblISBN ISBN: lblPubID Publisher's ID: lblSubject Subject : Txtitle Title

106

MSc.GenciBerati
TextBox1 DataSource TextBox2 Name TextBox2 DataField TextBox2 DataSource TextBox3 Name TextBox3 DataField TextBox3 DataSource TextBox4 Name TextBox4 DataField TextBox4 DataSource TextBox5 Name TextBox5 DataField TextBox5 DataSource Command Button1 Name Command Button1 Caption Command Button2 Name Command Button2 Caption Command Button3 Name Command Button3 Caption Command Button4 Name Command Button4 Caption Command Button5 Name Command Button5

PrincipetVisualBasic 6.0
adoBooks txtPub Year Published adoBooks txtISBN ISBN adoBooks txtPubID PubID adoBooks txtSubject Subject adoBooks cmdSave &Save cmdAdd &Add cmdDelete &Delete cmdCancel &Cancel cmdPrev &<

107

MSc.GenciBerati
Caption Command Button6 Name Command Button6 Caption Command Button7 Name Command Button7 Caption

PrincipetVisualBasic 6.0

cmdNext &> cmdExit E&xit

N mnyr q t mund t futemi dhe t manaxhojm n data base, ju duhet t lidhni ADO kontrollerin me nj skedar database. Si kemi thn edhe m par ne do t prdorim skedarin BIBLIO.MDB i cili instalohet bashk me programin Visual Basic. Pr t realizuar lidhjen duhet t ndiqen kro hapa: a) Kliko mbi ADO kontroll n form dhe hapni dritaren e zgjedhjeve (properties window) b) Klikoni n propertin ConnectionString, do tju shfaqet kutia e dialogut si m posht.

108

MSc.GenciBerati

PrincipetVisualBasic 6.0

pasi kutia e dialogut t shfaqet ju do t prdorni opsionet e Connection String. M pas kliko Build dhe n kutin e dialogut Data Link, bni dopioklik opsionin e emrtuar Microsoft Jet 3.51 OLE DB Provider.

M pas kliko n butonin Next pr t zgjedhur skedarin BIBLO.MDB. Ju mund t klikoni ne Text Conection pr tu siguruar pr lidhjen e skedarit database BIBLIO.MDB. Kliko OK pr t prfunduar lidhjen . M pas klikoni n propertin RecordSource dhe zgjidhni propertin Command Type adCmdTable dhe emrin e tabels (table name) Titles. Tani besoj se mund t prdorni skedarin e databaseit ne aplikacionin tuaj.

109

MSc.GenciBerati

PrincipetVisualBasic 6.0

Tani ju duhet t shkruani kod pr t gjitha butonat e komandave. Mbasi t keni realizuar gjith veprimet m sipr ju mund ta bni ADO kontrollerin t padukshm n kohen e ekzekutimit (n run time). Pr butonin Ruaj Kodet e programit jan i m posht: Private Sub cmdRuaj_Click() adoBooks.Recordset.Fields("Title") = txtTitle.Text adoBooks.Recordset.Fields("Year Published") = txtPub.Text adoBooks.Recordset.Fields("ISBN") = txtISBN.Text adoBooks.Recordset.Fields("PubID") = txtPubID.Text adoBooks.Recordset.Fields("Subject") = txtSubject.Text adoBooks.Recordset.Update End Sub Pr butonin Shto Kodet e programit jan i m posht: Private Sub cmdShto_Click() adoBooks.Recordset.AddNew End Sub Pr butonin Fshij Kodet e programit jan i m posht: Private Sub cmdFshij_Click() Confirm = MsgBox("Are you sure you want to delete this record?",

110

MSc.GenciBerati
vbYesNo, "Deletion Confirmation") If Confirm = vbYes Then adoBooks.Recordset.Delete MsgBox "Record Deleted!", , "Message" Else MsgBox "Record Not Deleted!", , "Message" End If

PrincipetVisualBasic 6.0

End Sub Pr butonin Anullo Kodet e programit jan i m posht: Private Sub cmdCancel_Click() txtTitle.Text = "" txtPub.Text = "" txtPubID.Text = "" txtISBN.Text = "" txtSubject.Text = "" End Sub Pr butonin Paraardhe (<) Kodet e programit jan Private Sub cmdPara_Click() If Not adoBooks.Recordset.BOF Then adoBooks.Recordset.MovePrevious If adoBooks.Recordset.BOF Then adoBooks.Recordset.MoveNext End If End If End Sub Pr butonin Tjetri(>) Kodet e programit jan i m posht Private Sub cmdTjetri_Click() If Not adoBooks.Recordset.EOF Then adoBooks.Recordset.MoveNext If adoBooks.Recordset.EOF Then adoBooks.Recordset.MovePrevious End If End If End Sub

111

MSc.GenciBerati

PrincipetVisualBasic 6.0

Kapitulli 22: Krijimi i nj aplikacioni m t avancuar database n VB duke prdorur ADO kontrollin. N kapitujt m par ju msuat se si t krijoni nj aplikacion duke prdorur data kontrollin e thjesht (data control) dhe kontrolerin ADO. Megjithat ato ishin aplikacione shume t thjesht dhe principal. N kt kapitull do t msojm se si t krijojm nj aplikacion pak m kompleks, gjithnj duke prdorur kontrollerin ADO. Apliacioni q do t krijojm do ta quajm Librari Elektronike. Kjo librari elektronike do t ket opsionin e regjistrimit t prdoruesve t aplikacionit dhe do t lejoj perdorimin e aplikacionit vetm prdoruesit e rregjistruar. Prdoruesit e rregjistruar do t zbatijn procedurn e logimit q do t krkoj emrin e prdoruesit dhe nj password, kshtu q ky apliacion do t knaq kushtet e aspektit t siguris t databaseit. Aplikacioni q po ndrtojm konsiston n nj menu mirseardhje, nj menu rregjistrimi, nj menu hyrjeje (logimi) dhe menun kryesore t administrimit t databasit. Rradha e ktyre menuve paraqitet me skem si m posht.

Miredita

regjistrohu

Perdoruesite rregjistruar

Hyr(Logo)

Database

112

MSc.GenciBerati

PrincipetVisualBasic 6.0

Para s gjithash ju duhet t ndrtoni menun e mirseardhjes. Ju mund t ndiqni shembullin si m posht

N kt form ju duhet t fusni tre butona komadne dhe t zgjidhni propertit e tyre si m posht:
Form name command button 1 Name command button 1 Caption command button 2 Name command button 2 Caption command button 3 Name command button 3 Caption main_menu cmdRegister Register cmdLogin Login cmdCancel Cancel

Kodi i programit eshte si me poshte: Private Sub cmdCancel_Click() End End Sub Private Sub cmdLogin_Click() main_menu.Hide Login_form.Show End Sub

113

MSc.GenciBerati
Private Sub cmdRegister_Click() main_menu.Hide Register.Show End Sub

PrincipetVisualBasic 6.0

N qoft se prdoruesi shtyp butonin Rregjistrohu, do t shfaqet forma e regjistrimit, shmbulli paraqitet me posht

Forma e rregjistrimit konsiston n dy kuti tekst (text box), tre butona komandash (command buttons) dhe nj kontroller ADO. Propertit e tyre jan si m posht. Form name textbox 1 name textbox 2 name textbox 2 PasswordChar command button 1 name command button 1 Caption command button 2 name command button 2 Caption Register txtName txtpassword * cmdConfirm Confirm cmdClear Clear

114

MSc.GenciBerati
command button 3 name command button 3 Caption ADO control name cmdCancel Cancel UserInfo

PrincipetVisualBasic 6.0

Shnim: N kutin e tekstit t passwordit do t shfaqet vetm shenja * pr secilin karakter t passwordit n mnyr q passwordi t jet sa m i sigurt. Kodet jan si m posht: Private Sub cancel_Click( ) End End Sub Private Sub cmdClear_Click( ) txtName.Text = "" txtpassword.Text = "" End Sub Private Sub cmdConfirm_Click() UserInfo.Recordset.Fields("username") = txtName.Text UserInfo.Recordset.Fields("password") = txtpassword.Text UserInfo.Recordset.Update Register.Hide Login_form.Show End Sub

Private Sub Form_Load() UserInfo.Recordset.AddNew End Sub

Menuja e logimit do t jet si m posht :

115

MSc.GenciBerati

PrincipetVisualBasic 6.0

N kt form jan dy text box dhe nj command button. Propertit e tyre jan si m posht : Textbox 1 name Textbox 2 name Command button 1 name Command button 1 Caption Form name txtName txtpassword cmdLogin Login Login_form

Kodet jan si m posht Private Sub cmdLogin_Click() Dim usrname As String Dim psword As String Dim usernam As String Dim pssword As String Dim Msg As String

Register.UserInfo.Refresh usrname = txtName.Text psword = txtpassword.Text

116

MSc.GenciBerati

PrincipetVisualBasic 6.0

Do Until Register.UserInfo.Recordset.EOF If Register.UserInfo.Recordset.Fields("username").Value = usrname And Register.UserInfo.Recordset.Fields("password").Value = psword Then Login_form.Hide frmLibrary.Show Exit Sub Else Register.UserInfo.Recordset.MoveNext End If Loop Msg = MsgBox("Invalid password, try again!", vbOKCancel) If (Msg = 1) Then Login_form.Show txtName.Text = "" txtpassword = "" Else End End If End Sub Menuja kryesore e databaseit do t dizenjohet si m posht:

117

MSc.GenciBerati

PrincipetVisualBasic 6.0

Propertite pr t gjitha kontrollet e prdorur n ket form jan paraqitur n tabln m posht: Form name ADO control name ADO visible TextBox 1 name TextBox 2 name TextBox 3name TextBox 4 name TextBox 5 name Command button 1 name Command button 1 caption Command button 2 name Command button 2 caption frmLibrary adoLibrary False txtTitleA txtAuthor txtPublisher txtYear txtCategory cmdSave &Save cmdNew &New

118

MSc.GenciBerati
Command button 3 name Command button 3 caption Command button 4 name Command button 4 caption Command button 5 name Command button 5 caption Command button 6 name Command button 6 caption Command button 7 name Command button 7 caption Kodet jan si m posht: Private Sub cmdCancel_Click() txtTitle.Text = "" txtAuthor.Text = "" txtPublisher.Text = "" txtYear.Text = "" txtCategory.Text = "" End Sub cmdDelete &Delete cmdCancel &Cancel cmdNext N&ext

PrincipetVisualBasic 6.0

cmdPrevious &Previous cmdExit E&xit

Private Sub cmdDelete_Click() Confirm = MsgBox("Are you sure you want to delete this record?", vbYesNo, "Deletion Confirmation") If Confirm = vbYes Then adoLibrary.Recordset.Delete MsgBox "Record Deleted!", , "Message" Else MsgBox "Record Not Deleted!", , "Message" End If End Sub Private Sub cmdExit_Click() End End Sub Private Sub cmdNew_Click()

119

MSc.GenciBerati
adoLibrary.Recordset.AddNew End Sub Private Sub cmdNext_Click() If Not adoLibrary.Recordset.EOF Then adoLibrary.Recordset.MoveNext If adoLibrary.Recordset.EOF Then adoLibrary.Recordset.MovePrevious End If End If End Sub Private Sub cmdPrevious_Click() If Not adoLibrary.Recordset.BOF Then adoLibrary.Recordset.MovePrevious If adoLibrary.Recordset.BOF Then adoLibrary.Recordset.MoveNext End If End If End Sub

PrincipetVisualBasic 6.0

Private Sub cmdSave_Click() adoLibrary.Recordset.Fields("Title").Value = txtTitle.Text adoLibrary.Recordset.Fields("Author").Value = txtAuthor.Text adoLibrary.Recordset.Update End Sub

120

You might also like