Visual basic

MSc. Genci Berati Principe të Visual Basic 6.0
5
Kapitulli I
Prezantimi i parë me Visual Basic 6.0
1.1 Një përshkrim i shkurtër i Gjuhës Visual Basic
Visual Basic 6.0 është rruga më e shpejtë dhe më e thjeshtë për krijimin e
aplikacioneve për Microsoft Windows. Edhe nëse jeni një programues
me eksperiencë, por edhe nëse jeni fillestar në programim, tek Visual
Basic do të gjeni një bashkësi mjaft të plotë instrumentesh të nevojshme
për të thjeshtesuar krijimin e shpejtë të apliakcioneve. VISUAL BASIC
është një gjuhë programimi e nivelit te larte e evoluar nga versioni i
hershëm për DOS i quajtur BASIC. Pjesa “Visual” i referohet metodës
për krijimin e ndërfaqjes grafike të përdoruesit (Graphical User
InterfaceGUI).
Me “Basic” kuptojme Beginners' Allpurpose
Symbolic
Instruction Code (kodi i instruksioni simbolik të përgjithshëm i
fillestareve). Visual Basic është një gjuhë mjaft e lehte për tu kuptuar
dhe mësuar. 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). Këto janë edhe divergjencat më kryesore nga BASICu
i vjetër.
Në BASIC, programimi bëhet në një file text dhe programi ekzekutohet
ne mënyrë sekuenciale. Në VISUAL BASIC, programimi behet ne një
mjedis grafik. Përdoruesi mund të klikojë mbi çfardo objekti i cili ka
funksionet dhe pronësitë (properties) e tij dhe mund të shkruhet një kod
programimi në çdo event, kështu që çdo objekt duhet të programohet
në mënyre të pavarur për të qënë i aftë t’i përgjigjet eventeve te
ndryshme. Kështu, një program VISUAL BASIC është i përbërë nga
shumë nënprograme, ku secili ka kodin e tij dhe secili mund të
ekzekutohet i pavarur dhe në të jëjtën kohë të gjithë mund të lidhen së
MSc. Genci Berati Principe të Visual Basic 6.0
6
bashku në një rrugë apo një tjetër. Gjuha Visual Basic eshte mjaft e
fuqishme. Pothuajse çdo detyre programimi mund të kryhet me këtë
gjuhë. Siç edhe mund ta merrni me mend, duhet mjaft punë për të
konsideruar veten tuaj ekspertë të kësaj gjuhe, por menjëherë sapo ju të
kuptoni koceptet bazë të Visual Basic ju menjëherë do të shikoni se
mund të jeni mjaft productiveë me këtë gjuhë. Kjo gjuhë programimi
është më e përdorura ndrët të gjitha gjuhët në historinë informatikës.
Gjuha e programimit Visual Basic është e ndërfutur në një sërë
aplikacionesh të tjera për 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, rrugën se si hiqen apo shtohen
komponentë të Visual Basic, mënyra se si mësohet apo merret
informacion shtesë me Visual Basic.
Ju mund të instaloni Microsoft Visual Basic nëpërmjet programit Setup.
Programi setup gjendet në diskun e parë të instalimit. Ky program
Setup mund të ekzekutohet automatikisht mbasi ju e keni future CD
përkatëse në CDDrive.
Programi Setup do të instalojë komponentet e
Visual Basic nga CDROM
në Hard Diskun tuaj. Gjithashtu do të
instalohen edhe skedarët e nevojshëm për informacion, ndihmë apo
dokumetime të tjera për programuesin.
Perpara se ta instaloni, ju duhet të siguroheni që kompjuteri juaj dhe
sistemi i përdorur kënaq kerkesat e Visual Basic.
Për 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 këshillueshme) 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. Genci Berati Principe të Visual Basic 6.0
7
· Rezolucion ekrani VGA ose më të avancuar për Microsoft
Windows.
· 16 MB RAM për Windows 95, 32 MB RAM për Windows NT
Workstation.
· Një mouse ose një tjetër device të pranueshme të ngjashme.
Më sipër përmendëm parametrat e kërkuar Hardware dhe Software për
instalimin e Gjuhës VB. Duhet të njihemi edhe me parametrat e kërkuar
për ekzekutimin e një aplikacini të realizuar me VB, të cilët janë
· Pentium ® 90MHz ose mikroprocesor më i avacuar.
· VGA 640x480 resolution
screen më i avancuar i suportuar nga
Microsoft Windows.
· 24MB RAM për Windows 95, 32MB për 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 për DHTML
krijuesa aplikacionesh).
Duhet të paraqesim edhe hapësirat minimale të domosdoshme të
kërkuara për 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.
· Komponentët shtesë (nëse kerkohen): MSDN (për
dokumentacionin ndihmës): 67MB, Internet Explorer 4.x:
afersisht 66MB.
MSc. Genci Berati Principe të Visual Basic 6.0
8
Pasi siguroheni për sa më lart, ndiqni këtë hapa për të instaluar Gjuhen
e programimint Visual Basic.
1. Fut Kompakt diskun me numrin 1 në CDROM
drive.
2. Përdor komandën më të përshtatshmë për të ekzekutuar
skedarin Setup, i cili ndodhe siç thamë në direktorinë rrënjë në
diskun 1. Nëse sistemi juaj suporton opsionin Autorun, atëherë
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.
Ndërsa për të hequr apo vendosur komponente të Visual Basic duhet të
ndiqen hapat e mëposhtëm:
1. Fut Kompakt diskun me numrin 1 në CDROM
drive.
2. Përdor komandën më të përshtatshmë për të ekzekutuar
skedarin Setup, i cili ndodhe siç thamë në direktorinë rrënjë në
diskun 1. Nëse sistemi juaj supërton Autorun, atëherë 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 për tu instaluar (ose deselokto
komponentet që duhet të hiqen ) në listë kutinë të kutisë së
dialogut Custom.
5. Ndiq instruksionet e Setupit
në ekran.
Ndërsa përtë marrë informacion apo ndihmë për nivele të ndryshme të
punës në Visual Basic Duhet të instaloni Microsoft Developer Network
MSDN, i cili është i ndarë në dy CD.
MSc. Genci Berati Principe të Visual Basic 6.0
9
1.3 Mjedisi i Visual Basic 6.0
Rruga për të hyrë ne ambjentin e programit është e njëjtë si për çdo
program tjetër. Po paraqesim tre rrugët e ekzekutimit të Visual Basic, a)
me mënynë start, b) me ambjentin Windows Explorer dhe c) me ikonën
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.
Përdor ambjentin Windows Explorer për të gjetur skedarin e
ekzekutueshëm të Visual Basicut.
c) Bëj dopio klik mbi ikonën e Visual Basic. Kjo
ikonë paraqitet si ne figurën.
Natyrisht ju mund të krijoni shortCut dhe të bëni 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 skedarësh që e formon
aplikacionin tuaj. Ky koleksion konsiston në forma (skedarët e formave
përkatëse), në module (skedarët e moduleve) etj.
Gama e programeve që mund të krijoni është mjaft e gjërë, megjithatë
ne do të koncentrohemi në krijimin e programve Standart EXE që do të
thotë programe të ekzekutueshme. Mjafton të klikoni mbi ikonën e
MSc. Genci Berati Principe të Visual Basic 6.0
10
Standart EXE dhe do të hyni në mjedisin e programimit të Visual Basic
6.0.
Siç shihet me poshtë, në figurën 1.2, mjedisi i Visual Basic 6.0 konsiston
në këto dritare:
Dritarja e një Forme bosh në të cilën ju mund të krijoni ndërfaqjen e
aplikacionit tuaj.
Dritarja Project që shfaq skedarët e përdorur në këtë projekt
Figura 1.1 Çfarë paraqitet pas ekzekutimit të Visual Basic 6.0
MSc. Genci Berati Principe të Visual Basic 6.0
11
Dritarja Properties qe shfaq pronësite (properties) e kontrolleve dhe
objekteve të perdorura në programin tuaj.
Përfshihet gjithashtu një Toolbox që konsisiton në disa butona të disa
kontrollerave kryesore për 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 për të paraqitur inputet,
outputet
apo për veprime
të tjera. Natyrisht që është e domosdoshme të njihemi me
terminologjine që do të përdorim, 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
përgjithshme të gjuhëve object oriented pasi kjo është një fushë mjaft e
Fig. 1.2 mjedisi i integruar i Visual Basic
MSc. Genci Berati Principe të Visual Basic 6.0
12
gjërë, por do të japim disa përcaktime të cilat do të na krijojnë një ide të
përgjithshme mbi këto gjuhë dhe për Visual Basicun
në veçanti.
Po paraqesim tani percaktimet për elementet dhe nocionet me të
përdorshme në gjuhët e orijentuara nga objektet dhe për Visual Basic në
veçanti. Më poshtë është dhënë përcaktimi për Klasën, Objektin,
Metodat, Eventet, Procedurën etj, si dhe për objektet konkrete të VB si:
Forma, Kontrollerat,
etj.
Klasa
(class) është një shabllon apo një plan që përcakton
karakteristikat e një objekti dhe përshkruan mënyrat se si do të sillet
objekti dhe se si ai do të paraqitet.
Nënklasa
(subclass) është një përcaktimi i ri i klasës të një objekti i cili
përdor një klasë (superclass) si pikë referimi. Ky përcaktim vjen nga
trashëgimi i ndonjë ndryshimi në klasen referuese prind (parent class
ose superclass).
Objekti
(object) është një shëmbull apo një përfaqësues i një klase. Sis
hëmbull kemi një formë e ekzekutuar apo një controller në një formë,
janë objekte.
Pronësitë
(properties) janë emërtime/vlera që paraqesin të dhënat e një
bjekti të një klase.
Metoda
(method) është një funksion që përshkruan sjelljen e një klase.
Percaktimi i një metode për një klasë nuk përfshin edhe implementimin
e metodës, duhet të shtohet kualifikuesi i implementimit të metodës në
mënyrë që të bëhet i vlefshëm implementimi i metodës në një klasë. Një
nënklasë mund të përcaktohet nga ripëercaktimi i implementimit të një
metode apo nga ndryshimi i ndonjë properti.
Eventet
(Events) është një veprim i ndodhur ndaj një objekti. Për këtë
veprim mund të shkruajm një kod që aktivizohet nëse ai veprim ndodh.
Një event mund të gjenerohet nga një veprim i përdoruesit si p.sh.
kliku, dopiokliku, shtypja e një tasti nga tastiera, nga kodi i programit
ose nga ndonjë timer (një controller për kontrollin periodik të eventeve).
MSc. Genci Berati Principe të Visual Basic 6.0
13
Lidhjet
(Associations) është një klase e cila përshkruan relacionet mes
dy klasave apo përfaqësuesve të klasave (objekteve). Pronësitë e
Association janë pointerat apo referencat në dy përfaqësuesit.
Modeli
është një bashkësi klasash, pronësishë dhe lidhjesh qe
mundëson shprehjen e një informacioni për një fushë të caktuar. Për
shembull një rrjet kompjuterik përbëhet nga Network Devices dhe
Logical Network.
Le të shohim disa klasa dhe objekte mjaft të përdorshme në Visual Basic
6.0
Forma
është një klase mbajtëse. Një koleksion kontrollerash të cilët
paraqesin të dhena apo informacione. Format mund të përfshihen në një
bashkësi formash që quhet Form Set.
Kontrollerat
(controls) janë objekte grafike si p.sh. kutite e tekstit (text
box), butonat etj të cilët vendosen në form për të paraqitur të dhena, apo
për të realizuar ndonjë veprim, ose për të lehtësuar përdorimin e
formës. Ne do të tregojmë funksionin e kontrollerave kryesore.
Ju mund të krijoni këto controller mbi një formë në VB duke përdorur
kutine e instrumeteve (toolbox) Form Controls në Form Designer.
1.4 Kontrollerat më të përdorshëm në Visual Basic 6.0
Krahas përcaktimit të kontrollerave kryesor të Toolboxit,
për të
lehtësuar lexuesin, paraqitet edhe një figureë në te cilën 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ë përcaktohet nga kodi i programit.
Label
Control: është një kontroller grafik që përdoret për të vendosur
tekst në ndërfaqjen tuaj. Ky tekst nuk mund të ndrrohet nga përdoruesi
i programit në run time (gjatë kohes së ekzekutimit).
MSc. Genci Berati Principe të Visual Basic 6.0
14
Command
Button
Control: Përdoret
për të filluar,
ndërprerë apo
përfunduar një
procedure gjatë
ekzekutimit të një
programi.
ListBox Control:
Përdoret për të
afishuar një liste
me artikuj, nga e
cila përdoruesi
mund të zgjedhë
një ose më tepër
prej tyre. Në se
numri i elementeve
të listës eshte më i
madh se mund të
paraqesë lista, atëherë automatikisht do të shtohet
ComboBox Control: është një kombinim i karakteristikave të një text
box dhe një list box. Një përdorues, nëpërmjet combo box mund të
zgjedhe të dhënat nga një listë dhe t’i vendos në text box.
Data Control: Lejon akses dhe perdorim të një data base i cili lidhet me
këtë data kontrol. Data control lejon veprime mbi data base, pra të
manipulojmë secilin record të data base të lidhur.
Timer: është një kontroller për kontrollin periodik të eventeve. Një
timer njuk është aktiv në run time.
Kontrollerat jane të shumtë në numër dhe të shumëllojshëm, sipas
natyrës dhe funksionalitetit. Këtu përmendëm vetëm ato më kryesoret.
Të gjitha kontrollerat e sipërpërmendur janë përzgjedhur si definitive në
toolboxin
e mjedisit të punës, me simbolin si më poshtë. Natyrisht me
një procedurë të thjeshtë mund të hiqen dhe të shtohen kontroller të
tjerë në toolbox.
Fig. 1.3 Kutia e instrumenteve (toolbox)
MSc. Genci Berati Principe të Visual Basic 6.0
15
1.4 Formatet e skedareve të Visual Basic
Microsoft Visual Basic përdor dhe krjon një numër të konsiderueshëm
skedarësh si në kohen e dizenjimit dhe gjate kohes se ekzekutimit. Këto
skedarë i nevoiten projektit apo aplikacionit sipas rastit apo
funksionalitetit.
1.4.1 Prapashtesat e skedarëve të projektit
Kur ju krijoni një projekt dhe e kompiloni atë në gjuhën Visual Basic, ju
krijoni një numër të konsiderueshëm skedarësh. Këto skedarë mund të
ndahen në kategori sipas kohës në të cilë ato janë aktive, si më poshtë:
Designtime
(gjatë kohës së dizenjimit të projektit), miscellaneous
development (të përbërë), dhe runtime
(gjatë kohë së ekzekutimit).
Skedarët design time janë konstruksione bllok të projektit tuaj si p.sh.
basic modules (.bas) apo form modules (.frm)
Skedarët Miscellaneous krijohen nga procese apo funksione të
ndryshme të mjedisit të punës së Visual Basic, si p.sh. Package and
Deployment Wizard dependency files (.dep).
1.4.2 Skedarët Designtime
dhe Miscellaneous
Më poshtë janë skedarët Designtime
dhe Miscellaneous të cilët mund të
Prapashtesa Përshkrimi
.bas skedar moduli i VB
.cls Modul i klases
.ctl Skedar kontrolli perdoruesi
.ctx Skedar kontrolli perdoruesi binare
.dca Depo aktive designer
.ddf Pakete dhe shperndarje wizard CAB skedar informacioni
.dep Pakete dhe shperndarje wizard CAB skedar pavaresie
MSc. Genci Berati Principe të Visual Basic 6.0
16
.dob ActiveX dokument nga skedare
.dox ActiveX dokument binare nga skedare
.dsr Skeadar aktive designer
.dsx Skeadar binar aktive designer
.dws Shperndarje wizard nga skedar script
.frm Skedar forme
.frx Skedar forme binar
.log Skedar Log për lançimin e gabimeve
.oca Skedar Control TypeLib cache
.pag Skedar Property page
.pgx Skedar Binary property page
.res Skedar Resource
.tlb Skedar Remote Automation TypeLib
.vbg Skedar Visual Basic group project
.vbl Skedar Control licensing
.vbp Skedar Visual Basic project
.vbr Skedar Remote Automation registration
.vbw Skedar Visual Basic project workspace
.vbz Skedar Wizard launch
.wct Template WebClass HTML
MSc. Genci Berati Principe të Visual Basic 6.0
17
1.4.3 Skedarët RunTime
Kur ju kompiloni një project në Visual Basic, të gjitha skedarët Designtime
të domosdoshëm do të përfshihen në skedarët e ekzekutueshëm
Run time. Skedarët Run time paraqiten më poshtë:
Prapashtesa Përshkrimi
.dll Komponent Inprocess
ActiveX
.exe Komponent Skedar i ekzekutueshëm ose ActiveX
.ocx ActiveX control
.vbd Skedar ActiveX gjenddje e dokumentit
.wct WebClass HTML template
Natyrisht që në këtë moment ne nuk mund të dime karakteristikat dhe
funksionalitetin e të gjitha tipeve të skedarëve të përmendur, por pas
shembujve të mëposhtëm do të krijojmë idenë e saktë për shumicën nga
skedarët e sipërpërmendur.
1.5 Mjedisi i integruar i krijimit të aplikacioneve
Mjedisi i punës në Visual Basic quhet Mjedis i Integruar i Krijimit
(Integrated Development Environment ose IDE) për arsye se integron
shumë funksione të ndryshme siç janë dizenjimi, editimi, kompilimi dhe
rregullimi në një mjedis të përbashkët. Në mjaft gjuhë të tjera, secili nga
funksionet e mësipërme operojnë si programe në vete, secili me
ndërfaqjen e vet. Mjedis i Integruar i Krijimit konsiston në elemntet e
mëposhtme.
Menu Bar: që paraqet komandat që përdoren në punën me Visual Basic.
Përveç mënuve standarte si File, Edit, View, Windows dhe Help,
natyrisht menu bar përmban edhe menu të futjes së funksioneve
MSc. Genci Berati Principe të Visual Basic 6.0
18
Fig. 1.4 Menuja File
specifike të programimit si Projekt, Format ose Debug. Menuja e VB
paraqitet si ne figurün mü poshtü
Menya kryesore e Visual Basicut
është mjaft e pasur e gjithashtu edhe
përbërja e menyve është e pasur me opsione të ndryshme. Aktivizimi i
menyve bëhet në menyre të zakonshme si pür tü gjitha përmes mausit
apo përmes tastierës me ALT ose me ALT+Shkronja e nënvizuar në
meny (AIt+F, AIt+E, etj). Përbërja e menysë dhe aktivizimi i opsioneve
të mundshme në to varet edhe prej kontekstit të punës dhe objekteve
të zgjedhura momentalisht gjatë punës.
Menya File
Në menyne File (Skedar) ndodhen komandat për punë me skedarü:
shtimi, hapja, ruajtja, shtypja, etj.
Komandat e ndërlidhura me ndonjë
veprim të caktuar janë të ndara në
grupe, përmes vijave ndarëse (Fig.
xxx).
Save
Forml As... (Ruaj formën si ...)
ruajtja e formës me emër tjetër. Save
Selection (Ruaj zgjedhjen)
Save
Change Script (Ruaj Scriptin
ndryshues)
Print
... (Shtype), bën shtypjen e
objektit aktual, formës, kodit etj. Print
Setup... (zgjedhja, konfigurimi i
shtypjes).
Make
Projectl.cxe... (Bëje
Projektin.exe...) sherben per krijimin e
fajllit ekzekutiv, me prapashtesë exe,
të projektit.
Make
Project Group (Krijo grup
projektesh).
New
Project (Projekt i ri), mundëson fillimin e projektit të ri Open
Project (Hape projektin), bën hapjen e projektit ekzistues.
Add
Project... (Shto projekt...), shton një projekt brenda projektit
aktual, me qëllim të krijimit të grupit të projekteve. Remove
Projec.
(Largo projektin).
MSc. Genci Berati Principe të Visual Basic 6.0
19
Fig. 1.5 Menya Edit
Save
Project (Ruaje projektin), bën ruajtjen e ndryshimeve të bëra në
projekt dhe e ruan me emrin më të cilin ka qëne i ruajtur.
Save
Project As... (Ruaje projektin si...) bën ruajtjen dhe emertimin e
projektit për të parën herë ose ruajtjen e projektit të ruajtur
paraprakisht, por tani me emër të ri.
1,2,3,4
Lista
e fajllave që janë hapur së fundi. Exit
(Dalja), shërben
për mbylljen e programit.
Menytë të cilat kanë në vazhdim tri pikat (...) kur të aktivizohen
kërkojne informacione shtesë përmes dritareve të ndryshme për
dialog. Menyte tjera automatikisht kryejne veprimin e caktuar në
meny.
Menya Edit
Në menyne Edit, si zakonisht ndodhen
komandat për prerje, kopjim, kërkim,
zëvëndesim, etj (Fig. 1.4).
Select
All (Zgjedhi të gjitha), bën
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), për punë me tabela.
Find
(Gjeje), shërben për hapjen e
dialogut për kërkim, me të cilin i kërkojmë
vlerat e caktuara, në formë, dritare të kodit
etj.
Replace
(Zëvendëso), shërben për
zëvendësimin e vlerës ekzistuese, me vlerë
të re (po ashtu bëhet përmes dialogut që
hapet).
Select
All (Zgjidh të gjitha). Realizon
zgjedhjen e të gjitha objekteve aktive
në ambjentin a punës tuaj.
Undo
(Zhbeje), anullon veprimin
(ndryshimin) e fundit Redo
(Ribeje),
kryen rishtazi veprimin (ndryshimin) e
fundit.
Cut
(Preje), largon zgjedhjen aktuale (të tekstit, objektit, formës, etj)
dhe e vendose në memorje (Clipboardpjesa
e rezervuar e memories
për këtë qëllim) ashtu që të njejtat thirren në pozitë të re pëmes Paste
MSc. Genci Berati Principe të Visual Basic 6.0
20
(Ngjit) (ka kuptimin e marrjes prej memorjes dhe ngjitjesvendosjes

pozitë të re, aty ku është momentalisht kursori ose zgjedhja).
Copy
(Kopjo), bën kopjimin e zgjedhjes aktuale. Paste
(Ngjite),
thërret prej memorjes përmbajtjen momentale të saj (nga Clipboard).
Paste
Link (Ngjite lidhjen), krijon vetëm lidhjen me objektin ne
Clipboard.
Remove
(Largo), bën largimin, fshirjen e zgjedhjes momentale
Delete
(Fshije), bën fshirjen e të dhënës apo objektit të zgjedhur
(selektuar).
Delete
Table from Database (Fshije tabelën prej bazës së të dhënave),
kur jemi duke punuar me baza të të dhënave.
Indent
(dhëmbëzimi, shtyerja), zhvendosja e tekstit. Outdeat
(largimi) i një shtyerje (Indenti).
Insert
File (Inserto fajllin), shërben për insertimin e fajllit ekzistues, në
kuadër të projektit aktual.
List
Properties/Methods (Listo tiparet/metodat), shërben për listimin e
tipareve dhe metodave në dispozicion gjatë shkruarjes së kodit, për të
lehteAar dhe ndihmuar shkruarjen e kodit.
List
Constants (Listo konstantet) Quick
Info (lnformate e shpejtë)
Parameter
Info (Informatë për parametrat)
Complete
Word (Kompleto fjalën), shërben për kompletimin e fjalës së
filluar, gjatë shkruarjes së kodit.
Go
To Row (Shko tek rreshti) shërben
për kalim në rreshtin e caktuar.
Bookmarks
(shenjat), (Bookmarkshenje

libër, pra si shenjat që i lëmë në fibër, për
gjetjen e faqes se caktuar, p.sh, duke
palosur skajin e fletës përkatëse), të cilat
vendosen në pjesë të caktuara të kodit ose
projektit, për t'i gjetur ose per t'iu referuar
me vone.
Menuja View
Në menyne View (pamja), ndodhen
komandat të cilat kanë të bëjnë me
rregullimin e elementeve të cilat do të
shihen në dritaren e VB dhe mënyrën se si
do të duken ato (Fig. 1.5). Gjithashtu,
mundëson kalimin prej një pamje në
tjetrën. Njëherit përmes kësaj menye
MSc. Genci Berati Principe të Visual Basic 6.0
21
mund të paraqesim ose të largojmë nga ekrani dritaret e ndryshme, si
Project Explorer, Form Layout Window, etj.
Në këtë meny ndodhet edhe nënmenya Toolbar, përmes së cilës
zgjedhim se cili shirit i veglave do të shihet në ekran. Zakonisht,
varesisht prej kontekstit aktivizohet shiriti i caktuar i veglave, kurse
përmes menyse Toolbar mund të shtojme ose largojmë shiritat tjere të
veglave.
Menya Project
Menya Project, përmbanë komandat për
manipulim me objektet e projektit dhe tiparet e tij
(Fig. 1.6).
Përmes komandave Add, mundësohet shtimi i
objekteve të caktuara në kuadër të projektit.
Përmes komandës C omponentsi
qasemi
komponenteve të ndyshme të cilat mund t'i
përdorim në programe, për të lehtësuar dhe njëherit
për të përsosur programet. Në listen e
komponenteve ndodhet një numër shumë i madh i
komponenteve të gatshme të cilat lehtësojnë punën
dhe mundësojnë kryerjen e veprimeve të ndryshme
përmes komandave të gatshme nga komponentet e
ofruara.
Përmes opcionit Project Properties ... hapet dritarja për dialog,
përmes së cilës përcaktohen opcionet për mënyren e startimit të
programit dhe tipareve tjera të projektit, si emertimi, versioni, modeli
etj.
Menya Format
Menya Format, përmban komandat të cilat përdoren për
formatizimin e objekteve të projektit (programit) (Fig.
1.7). Përmes tyre lehtësohet rreshtimi dhe formësimi i
objekteve, shprërndarja horizontale dhe vertikale e tyre
brënda formës. qëndërsimi (centralizimi) dhe rradha e
paraqitjes. Njëherit kemi edhe opcionin Lock Controls,
përmes së cilit bëjmë mbylljen e kontrollave, që të mos
ketë mundësi të bëhet ndryshimi i pozitës së tyre në
kuadër të formës, kur duam që pozita e përcaktuar e objektit të mos
ndryshohet rastësisht, etj.
MSc. Genci Berati Principe të Visual Basic 6.0
22
Menya Debug
Menya Debug është shumë e rëndësishme gjatë shkruarjes së kodit të
programeve. Përmbanë shumë komanda të cilat ndihmojnë gjetjen e
gabimeve në programe. Mundëson ekzekutimin hap pas hapi të
programit. Mundëson ndërprerjen e ekzekutimit të programit, për të
bërë ndryshime në kod ose në vlera të ndryshme ose në rradhën e
ekzekutimit të rreshtave të kodit. Të gjitha këto mundësojnë gjetjen
dhe përmirësimin e lehtë të gabimeve në programet e V B.
Menya Run
Menya Run (Ekzekuto), përmbanë
komandat për ekzekutimin e programit,
pauzimin, ndaljen, dhe përsëritjen. Në
bashkëpunim me menyne Debug mund të
bëjë ekzekutimin e pjesshëm. Përmes saj
mund të bëhet edhe përkthimi (Compile Kompilimi)
i programit para
ekzekutimit, kështu bëhet edhe verifikimi i sintaksës së kodit dhe
gjetja e gabimeve të shtypjes dhe të kodit.
Menya Tools
Menya Tools, ndër të tjera përmbanë
komandat për shtimin e procedurave në
kod dhe përcaktimin e tipareve të tyrë si
dhe opsionin Menu Editor (Editorin e
menyve, programi përmes së cilit
krijojmë menytc e programit) dhe
menynë Options (Opcionet) përmes së
cilës bëjmë konfigurimin e programit.
Menya AddIns
Menya AddIns
(shtesat), përmbanë komandat përmes së cilave
zgjërojmë ambientin programues të VB. ,Shtimi bëhet përmes AddIn
Manager (Menaxherit të
shtesave) e pastaj shtesat i gjeni
në listën AddIns.
Mund të
shtohen edhe programe të tjera
të cilat janë projektuar të
punojnë në VB, si p.sh.
Fig. 1.11 Menuja
AddIns
MSc. Genci Berati Principe të Visual Basic 6.0
23
programi për krijimin e dritareve të cilat komunikojnë me bazat e të
dhënave.
Menya Window
Menya Window përmbanë komandat
për manipulim me dritaret në kuadër të
dritares punuese të VB. Dritaret mund
të shpërndahen, rirreshtohen dhe të
ripozicionohen përmes komandave në
këtë meny, në mënyrë horizontale,
vertikale dhe kaskadike. Gjithashtu
përmbanë edhe listën e objekteve të
projekteve të hapura dhe mundëson
kalimin prej njërit objekt në tjetrin.
Menya Help
Menya Help përmbanë komandat përmes së
cilave kërkoni ndihmë. VB përmbanë
dokumentacion të pasur për ndihmë lidhur
me përdorimin e programit dhe përmbanë
shembuj të shumte. Varësisht prej instalimit
mund të gjeni shpjegime të nevojshme lidhur
me veprimet e caktuara. Nëse është instaluar
edhe "programi" MSDN (Microsoft Developers
Network) që paraqet sistemin për ndihmë për
programet e Microsoftit, atëhere mënya help do të jetë shumë e pasur.
MSDN instalohet veçantë, nuk është në kuadër të VB.
Shiritat e veglave
Si shumica e programeve të Microsoftit
edhe VB ka shiritat e veglave
(Toolbars) në të cilët ndodhen funksionet dhe komandat të cilat
përdoren më së shpeshti, për të lehtesuar dhe shpejtuar përdorimin e
tyre. Nëse mbahet treguesi i mausit për një kohë mbi tastin përkatës në
shiritin e veglave, do të paraqitet shpjegimi ose përshkrimi i shkurtër
(TooITip) i tastit përkatës. Shpjegimi paraqitet në një fushë të verdhe
pranë tastit ku është pozicionuar treguesi i mausit.
VB ka katër shirita të veglave: Standard, Debug, View dhe Form Editor.
Në fillim shihet vetëm shiriti i veglave standarde, i pozicionuar nën
Fig. 1.12 Menuja Window
Fig. 1.13 Menya Help
MSc. Genci Berati Principe të Visual Basic 6.0
24
Ruan Kerkim
zhben Ekzekuto
Riben Nderpret
Ndalon Dritare Propertive
Projekt Explorer
Objektet
Paraqitja e formes
Toolbox
DataView
Figura. 1.14 Toolbari
Standart
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 shënjen e zgjedhjes para
tij. Shiritat paraqiten në dritare të veqanta dhe kanë titullin e dritares
dhe tastin për mbyllje në skajin e djathtë të titullit. Mirëpo shiritat janë
të tipit Dockablc (të ankorueshëm, mund të lidhen në dok (si anijet),
pra mund të vendosen "të lidhen" në pjesën e shiritave ose në pjesët
anësore të dritares së VB). Kur janë të lidhur, mund të zgjedhen
përmes shenjës me vije të dyfishtë ose si vijë e hijëzuar në skajin e
majtë ose të lartë dhe mund të zhvendosen në pjesët 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 përmes së cilave aktivizojmë/deaktivizojmë
dritaret Project Explorer, Properties Window, Form Layout
Window, etj..
Shiriti i veglave Edit, ka të bëjë me editimin e kodit (programit) në
dritaren e kodit dhe mundëson qasje të shpejtë në komandat, tiparet,
metodat, parametrat dhe konstantat. Gjithashtu mundëson
zhvendosjen e tekstit (Indent, Outdent) dhe vendosjen e shenjave
(Breakpoint).
Shiriti i veglave Debug, përdoret për ekzekutimin e programit dhe
menyrat e ndryshme të ekzekutimit hap pas hapi. Pastaj aty kemi edhe
komandat përmes së cilave aktivizohet edhe dritarja për ekzekutim të
MSc. Genci Berati Principe të Visual Basic 6.0
25
menjehershëm (Immediate Window), që paraqet një dritare në pjesën
e poshtme të dritares së VB dhe në të cilën shihen rezultatet e
ekzekutimit të programit.
Context Menu: është një shortcut për veprimet më të përdorshme. Për të
aktivizuar këtë menu mjafton të klikoni butonin e majtë të mousit
mbi
ojektin që jeni duke përdorur.
Toolbars: përfaqëson aksesin e shpejtë të
komandave më të përdorshme në mjedisin e
programimit. Ju mjafton të shtypni butonin
mbi toolbar dhe do të marrë jetë veprimi që
përfaqësohet në ate buton. Ju mund të keni
dijeni mbi konceptin e toolbarit
nga ndonjë
ambjent tjetër për Microsoft Windows.
Toolbox: përfaqëson një bashkësi mjetesh që
përdoren në design time për të vendosur kontrollerat në një formë. Ju
mund të krijoni toolboxin
tuaj në përshtatje me kontrollerat më të
nevojshëm për natyren e aplikacionit që po krijoni.
Dritarja e eksplorimit të projektit (Project Explorer Window): liston
format dhe modulet në projektin tuaj.
Dritarja e Pronësive (Properties Windows): Liston Pronësitë e
kontrollerit të zgjedhur.
MSc. Genci Berati Principe të Visual Basic 6.0
26
Shfletuesi i objekteve (Object Browser): liston objektet e përdorura në
projekt dhe krijon lehtësi për të hyrë në kodin e programit.
Fig. Dritarja e propertive
(tipareve)
MSc. Genci Berati Principe të Visual Basic 6.0
27
Dritarja e editimit të kodit të programit (Code Editor Window): është
ambjenti në të cilin shkruhet kodi i programit.
MSc. Genci Berati Principe të Visual Basic 6.0
28
Kapitulli 2
Ndërtimi i një aplikacioni ne Visual Basic 6.0
2.1 Struktura e një aplikacioni Visual Basic
Një aplikacion është një bashkësi instruksionesh që e drejton
kompjuterin të kryej një ose disa detyra. Struktura e një aplikacioni
është rruga në të cilën këto instruksione janë organizuar, d.m.th. ku janë
ruajtur instruksionet dhe në cilën radhë do të ekzekutohen këto
instruksione.
Aplikacione të thjeshta si p.sh. shembulli klasik “Hello World”, kanë
strukturë të thjeshtë. Organizimi nuk është i rëndësishëm kur kemi
vetëm një rresht kod programi. Kur aplikacioni behet kompleks, atëherë
nevoja për organizim apo strukturim bëhet domosdoshmëri. Imagjinoni
sikur aplikacioni juaj të lejonte ekzekutimin e instruksioneve në mënyrë
fare të rastësishme. Për të kontrolluar ekzekutimin e një programi,
struktura është shumë e rëndësishme për programuesin (pasi mund të
gjejmë lehtë instuksionet apo elementet e tjera brënda aplikacionit).
Për arsyen se aplikacioni i Visual Basic është i bazuar në objekte,
struktura e kodit të objektit përcakton afërsisht prezantimin fizik të tij
në ekran. Një objekt përbëhet nga të dhënat dhe kodi. Nëse shikoni një
objekt Formë në ekran, ai është prezntimi i propertive të paraqitjes së tij
apo të kodit që mund të ndikojë këto properti. Për secilën formë në një
aplikacion ka një Form Module (skedar me prapashtesën .frm).
MSc. Genci Berati Principe të Visual Basic 6.0
29
Secila Form Module përmban event procedures të cilan janë seksione
për të shkruar kod programi që është i ekzekutueshën në përgjigje të
eventit përkatës. Forma siç kemi thënë mund të përmbajë kontrollera të
cilët kanë eventet e tyre.
Në këtë kapitull do të përqëndrohemi kryesisht në krijimin e ndërfaqjes
grafike të një aplikacioni, duke shfrytëzuar disa shembuj si krijimi i një
programi për llogaritjen e vellimit të cilindrit, një makine llogaritëse dhe
shembulli i përdorimit të kontrollerave.
2.1 Krijimi i aplikacionit tuaj të parë
Në këtë seksion, ne nuk do të shohim aspektet teknike të programimit
në Visual Basic, por vetëm të kemi një ide mbi të dhe siç thamë do të
përqendrohemi në mënyrën se si do të futim kontrollerat në forma apo
si do te dizenjojmë ndërfaqjen grafike.
Përmedëm më sipër se një aplikacion në visual Basic konsiston në një
Projekt i cili përbëhet nga skedarë të tjerë të ndryshëm.
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 fjalën “Tungjatëjeta”. Po tregojmë një për një të gjitha
veprimet për ndërtimin e këtij aplikacioni të thjeshtë, ndërsa për
shembujt në vijim do t’ë kalojmë disa hapa të cilët mund të
nënkuptohen nga lexuesi me një stazh në përdorimin e kompjuterit.
Mbasi keni ekzekutuar Visual Basic, një formë standarte do të paraqitet
në mjedisin e programimit.
Në fillim do të krijojmë të ashtuquajturin Ndërfaqje të programit që
është ajo çfarë to t’i prezantohet përdoruesit. Natyrisht që aplikacioni
ynë i parë do të ketë vetëm një formë, në të cilën do të jetë një text box
dhe një command button. Aplikacioni do të konsistojë në paraqitjen e
tekstit Tungjatëjeta në kutinë e tekstit menjëherë mbas klikimit të
butonit. Për të ndërtuar ndërfaqjen e këtij shembulli do të ndiqen hapat
më poshtë
MSc. Genci Berati Principe të Visual Basic 6.0
30
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ë hapësira e text box.
3. Bej Drag nga pozicioni i fillimit, duke formuar hapësirën e text boxit.
4. Lëshojë butonin e mousit.
Kjo është rruga për të vendosur çdo kontroller tjetër në një formë.
Do të shihni se text box është formuar tashmë në formën tuaj.
Po të njëjtat veprime do të bëni për të vendosur command button.
Tani forma juaj do të shfaqet si më poshtë
MSc. Genci Berati Principe të Visual Basic 6.0
31
Mbasi keni ndërtuar ndërfaqjen grafike duhet të zgjidhen pronësitë
(properties) e tre objekteve të përdorura që janë Forma, Text box dhe
Command button. Për të vendosur propertitë ndiqni këto hapa:
1. Aktivizoni dritaren e propertive
2. Kliko mbi objektin të cilit do t’i vendosësh apo ndërrosh propertitë.
3. Vendos vlerën përkatëse për çdo zgjedhje të dritares se propertive.
Për shëmbullin tonë kemi nevojë, përkatësisht për tre objektet, të
vendosim këto vlera:
Objekti Propertia Vlera qe vendoset
Form Caption Tungjatëjeta
Text box Text (Empty)
Command button Caption OK
Pasi vendosët vlerat e pronësive, duhet që të shkruajmë kodin e
programit në eventin e caktuar. Ne thamë se do të krijojmë një program
MSc. Genci Berati Principe të Visual Basic 6.0
32
që të aktivizojë tekstin Tungjatëjeta mbas klikimit të command butonit,
pra do të kemi vetëm një event i cili është klikimi i butonit OK. Për të
shkruar kodin që do të realizojë paraqitjen e tekstit në text box duhet të
ndjekim këto 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 pikërisht aty ku ndodhet kursori, ndërmjet
rreshtave të bolduar.
Private Sub Command1_Click()
Text1.Text = "Tungjatëjeta!"
End Sub
Tani nuk mbetet tjeter vetëm të shohim rezultatin e punës tonë duke
zbatuar aplikacionin nëpërmjet butonit Start të toolbarit
ose duke
shtypur butonin F5 të tastierës. Pasi e keni ekzekutuar aplikacionin
shtypni butonin OK dhe do të shikoni të shfaqet në kutinë e tekstit teksti
“Tungjatëjeta”.
MSc. Genci Berati Principe të Visual Basic 6.0
33
2.1.1 Disa variante të tjera të shëmbullit më sipër
Megjithese është e njëjta kerkesë si në shëmbullin më sipër, le të shohim
se si një rresht i caktuar i kodit të programit manipulon aplikacionin në
një mënyrë apo një tjetër. 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ë bëhet aktive menjëherë
një formë definitive e quajtur Form1. Tani bëni dopioklik mbi form1 dhe
do të shfaqet Source code për këtë formë. Mos i jepni rëndësi për
momentin instruksioneve të fillimit dhe të mbarimit (Private Sub
Form_Load dhe End Sub). Shkruani ne mes këtyre rreshtave të ofruara
nga vetë Visual Basic, pikërisht aty ku ndodhet kursori tekstin qe
shikoni me poshtë, përkatësisht për tre shembujt veç e veç.
Nëse 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 "Tungjatëjeta"
next i
End Sub
Shembulli 2.1.2
Private Sub Form_Load
Form1.show
For i=1 to 5
print " Tungjatëjeta "
next i
End Sub
Shembulli 2.1.3
Private Sub Form_Load
Form1.show
For i=1 to 10
print i
next i
MSc. Genci Berati Principe të Visual Basic 6.0
34
End Sub
Mbasi e prekëm sado pak krjimin e një programi, tani le të shpjegojmë
hapat e nevojshëm për ndërtimin e një aplikacioni në Visual Basic 6.0
2.2 Hapat për ndërtimin e një aplikacioni në Visual Basic
Nga sa thamë më sipër mund të përgjithësojmë hapat e krijimit të një
aplikacioni në Microsoft Visual Basic.
Hapi 1. Realizo ndërfaqjen (Krijo format me kontrollerat
dhe objektet e
nevojshme)
Hapi 2. Zgjidh Properties për secilin nga kontrollerat apo objektet e
(pronësitë)
Hapi 3. Shkruaj kodin e eventit (event code)
Duke ndjekur hapat më sipër provoni të implementoni shembujt më
poshtë.
Shembulli 2.2
Në shëmbullin 2.2 po vendosim më shumë kontroller në forme dhe këto
janë tre text box, tre Label Control dhe një command button. Në këtë
kapitull, për këtë shëmbull po shohim vetëm ndërtimin e ndërfaqjes
grafike kurse kodin do ta trajtojmë në kapitullin 3. Ky shëmbull
konsiston në një program të thjeshtë që llogarit vëllimin e një cilindri
kur jepet rrezja e bazës dhe lartësia.
Le të dizenjojmë ndërfajen duke ndjekur hapat që përmendëm në
shembullin 2.1. Futni tre text box, tre Label dhe një command button.
Rregulloni përmasat e kontrollerave të përdorur në mënyre që të
MSc. Genci Berati Principe të Visual Basic 6.0
35
Psi vendosëm shtatë kontrollerat në formën tonë, tani le të vendosim
propertitë për to dhe për formën. Para së gjithash kalo tek dritarja e
pronesive të formës (properties window) dhe ndrysho fushën e titulluar
caption nga form1 në “Vëllimi i cilindrit”. Pastaj për tre kutitë e
etiketave (label) ndrysho perseri fushën caption përkatësisht në “Rrezja
e bazës”, “Lartësia” dhe “Vëllimi i cilindrit”. Pasta për tre kutitë e tekstit
(TextBox), pastro (fshij) në propertinë text të secilës nga text boxet
përkatësisht permbajtjen text1 text2 dhe text3. Tani kemi tre text box
boshë. Emërto text boxet përkatësisht “rrezja”, “lartesia” dhe “vellimi”
në propertinë name. Më tej në buton komande (CommandButton)
ndrysho caption e këtij butoni në O.K. dhe emrin (propertia name) në
OK (është mjaft e rëndësishmë të mos jenë të njëjtë propertitë Caption
dhe Name për disa arsye që do të kuptohen më vonë). Tani ruani
projektin me emrin Cilinder.vbp dhe formë me emrin cilindër.frm. Për
momentin po e lëmë mënjanë kodin, pasi do ta trajtojmë në kapitullin 3.
Shembulli 2.3
Dizenjimi i një ndërfaqje tërheqëse dhe miqësore me përdoruesin (user
friendly) duhet të jetë hapi i parë në ndërtimin e një programi në Visual
MSc. Genci Berati Principe të Visual Basic 6.0
36
Basic. Paraqitja e aplikacionit është po aq e rëndësishme sa edhe
elementet e tjerë. Për të ilustruar këtë, le të shohim në paraqitjen e
programit të makines llogaritese.
Ndiqni hapat e mëposhtëm për të dizenjuar ndërfaqjen e makinës
llogaritëse që shihni në figurë.
Ndrysho përmasat e formës (bëj terheqje në këndet dhe meset e
kuadratit të formës) deri në përmasat që mendoni se është e
mjaftueshme për të gjitha elementet që do të përmbajë.
Shko tek properties window dhe ndrysho caption si të dëshironi (në
shëmbullin më sipër vlera e propertisë
caption është “Makinë
Llogaritëse Copyright Genci Berati”)
Ndrysho propertite e tjera të formës siç janë ngjyra e sfondit
(background color), ngjyra e butonave, stili i korrnizave. Unë
rekomandoj këto property për formën e Makinës llogaritëse:
MSc. Genci Berati Principe të Visual Basic 6.0
37
BorderStyle Fixed Single
MaxButton False
minButton True
Këtë properti sigurojnë faktin që përdoruesi nuk mund të ndryshojnë
përmasat apo të maximizojë dritaren e makines llogaritëse, por mund ta
minimizoje atë.
Ndërto Panelin e ekranit te makines llogaritëse duke klikuar ne butonin
Label dhe duke vendosur mousin në vendin perkatës në formë dhe
duke terhequr përgjatë sipërfaqes qe duhet të zere ekrani i makinës
llogaritëse.
Kliko mbi panelin e ekranit dhe dritarja e propertive korresponduese do
të shfaqet. Fshij caption e paracaktuar kështu kemi një label boshe, pasi
në të do të paraqiten numrat paraprakë apo rezultatet e kalkulimeve.
Eshtë mirë që të zgjidhet një ngjyrë e hapët pasi ngjyra e numrave apo e
simboleve në atë ekran po e zgjedhim të jetë e zezë.
Tani vizato butonat e nevojshëm për ketë makinë llogaritëse. Unë
sugjeroj të përdoren të njëjtët butona si në figurë.
Testoje ekzekutimin e programit (në këtë moment nuk janë funksionalë
butonat, por vetën ndërfaqja grafike) duke shtypur f5. Në se jeni të
kënaqur me paraqitjen, atëherë ruajeni projektin si dhe të gjitha
skedarin që përmban formën.
Tani ju me siguri mezi prisni të dini se si të shkruani kodin në mënyrë
që Makina llogaritëse të punojë.
Për kodin e këtij programi, ju lutem referojuni kapitujve të mëposhtëm
të Visual Basic (Kapitulli 3)
MSc. Genci Berati Principe të Visual Basic 6.0
38
Kapitulli 3
Si të shkruajm kod?
Për ndërtimin e një aplikacioni, mbasi ndërtohet paraqitja grafike e tij,
duhet patjetër të shkruajmë kod ne përgjigjeve të eventeve të
kontrollerave apo formës (formave) së përdorur. Eventet do të sqarohen
më poshtë për secilin kontroll. Le të vazhdojmë me shembujt që kemi në
dorë dhe të japim çështjet e rëndësishme të shkrimit të kodit të
programimit.
Tani le të tentojmë të shkruajm kodin për programin e vëllimit 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 vëllimit të cilindrit.
MSc. Genci Berati Principe të Visual Basic 6.0
39
Në design mode (pra jo në kohë e ekzekutimit), bëj dopjoklik mbi
butonin OK dhe shkruani kodin e mëposhtëm në mes të rreshtave
Private Sub OK_Click( ) dhe End Sub
Private Sub OK_Click( )
r = Val(rrezja.Text)
h = Val(lartesia.Text)
pi = 22 / 7
v = pi * (r ^ 2) * h
vellimi.Text= Str$(v)
End Sub
Kur ju të ekzekutoni programin (me butonin F5 të tastierës ose me
butonin start në toolbarin standart të mjedisit) ju do të shikoni
ndërfaqjen siç paraqitet më sipër. Në qoftë se ju futni një vlerë
përkatësisht në kutine e tekstit të Rezes dhe të Lartësisë dhe klikoni në
butonin OK, menjëherë do të shfaqet vlera e vëllimit në kutine e tekstit
perkatës.
Do të përpiqem të sqaroj kodin e mësipërm (source code) të programit
tek fillestarët (nëse keni përvojë në Visual Basic, ju mund ta kaloni këtë
pjesë). Le të shjegojmë rreshtat e mësipërm duke përdorur pseudo
kodin si më poshtë
MSc. Genci Berati Principe të Visual Basic 6.0
40
Procedurë për klik në butonin OK për të llogaritur vëllimin e cilindrit
Fillimi i procedure
Merr vlerën e r nga kutia e tekstit të rrezes
Merr vlerën e h nga kutia e tekstit të lartësisë
Shënin një vlerë konstante 22/7 të pi grekut
Llogarit vëllimin duke përdorur formulën
Nxjerr rezultatin tek kutia e tekstit e vëllimit
Fundi i procedures.
Sintaksa rrezja.Text konsiston në dy pjesë; rrezja është emri (name
property) e kutise se tekstit të rrezes ndërsa Text është përmbajtja
aktuale e ketij text box. Përgjithësisht, sintaksa është:
Objekti.Pronësia (Object.Property).
Në shëmbullin tonë, objektet janë rrezja, lartesia dhe vellimi, secila ka
propertinë text. Objekti dhe propertitë
e tij ndahen me një pikë.
Përmbajtja e një text box mund të shfaqet vetëm në formë teksti, ose në
terma të tip të dhënash programimi, si string. Për të konvertuar
përmbajtjen e një tekst (te nje text boxi)
në një vlerë numerike duhet të
realizohen veprime matematikore, ju duhet të përdorni funksionin Val.
Së fundmi në mënyrë që të shfaqim rezultatet në një kuti teksti (text
box) duhet të përdoret një procedurë e anasjelltë, pra të kthehet një vlerë
numerike në një tekst, duhet te përdoret funskioni Str$.
Do të mundohem gjithashtu të shpjegoj sintaksën që përcakton nen
proceduren (sub proceduren) Private Sub OK_click. Private Sub kupton
që parametrat, vlerat dhe formulat që janë përdorur në këtë procedurë i
përkasain vetë subprocedurës OK (një object në vete). Ato nuk mund të
përdoren nga subprocedurat e tjera apo modulet. OK_Click përcakton
se çfarë lloji veprimi do t’i përgjigjet 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 t’i përdorim në kapitujt e metejshëm.
Për çdo kontroller, disa nga eventet që lidhen me to janë paraitur në
figurën më poshtë.
MSc. Genci Berati Principe të Visual Basic 6.0
41
Ne treguam më sipër se si të shkruajmë kod në një event të caktuar,
konkretisht mbi një command button. Menjëherë pas dopioklikut mbi
buton, aktivizohej ambjenti ku mund të shkruanim kodin e eventit për
klikimin e butonit.
Për të shkrur kod mbi një event të një kontrolleri, mjafton që të
zgjedhuim në ambjentin më sipër objektin në kombon 1 dhe eventin në
kombon 2
Kombo për zgjedhjen
e eventit (2)
Kombo për
zgjedhjen e objektit
(1)
MSc. Genci Berati Principe të Visual Basic 6.0
42
Kapitulli 4
Puna me kontrollerat
Para se të shkruhet një event procedurë për një kontroll, për t’ju
përgjigjur një veprimi të përdoruesit, ju duhet të zgjidhni një sërë
propertishë për kontrollin për të përcaktuar paraqitjen dhe se si do të
punojë me event procedurën. Këto properties për kontrollet ju duhet t’i
zgjidhni në dritaren e properties. Këtu nuk po sqarojmë në detaje se si
duhet të zgjidhen këto veçori (properties). Megjithatë po theksojmë disa
pika të rendësishme rreth zgjedhjes së propertive.
Po paraqesim në figurën më poshtë dritaren e propertive. Në këtë figurë
paraqiten propertitë e formës form1. Nëse klikohet mbi objektet të tjera,
dritarja e propertive do të marrë vlerat e objektit përkatës. Në dritaren e
propertive kemi dy mundësi 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 natyrës së objektit ndryshojnë edhe propertitë. Po
tregojmë tani kategoritë e propertive sipas natyrës.
Apperance është një kategori me propërti për 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 për objektet e lidhura më një bazë të
dhënash. Në këtë kategori ndodhen properti për zgjedhjen e të dhënë
apo të dhënave të lidhura me objektin.
Font është kategoria e propertive që rregullon parametrat e tekstit të
kontrollerit në përdorim.
MSc. Genci Berati Principe të Visual Basic 6.0
43
Figura . Propertitë e formes
Position është një kategori apo grup propertishë për vendosjen e
kontrollerit në mbartësin 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ë për koordinatat e kufinjëve të objektit në
përdorim.
Le të kalojmë edhe një herë tek shembulli i makinës llogaritëse. Le të
vendosim propertitë e objekteve të përdorura në këtë shembull.
Ju duhet të vendosni Titullin e kontrollit (Caption Property) në mënyrë
që të përdoruesi i applikacionit tuaj të dijë se çfarë duhet bërë me atë
kontroll. Për shëmbull, në programin e makinës llogaritëse të gjithë
titujt (captions) e butonave si +,,
MC, MR gjenden në makinat e
zakonshme llogaritëse kështu një përdorues i atij applikacioni nuk e ka
të vështirë të manipulojë butonat.
Ju duhet të zgjidhni një Emër të kontrollit (Name property) pasi do të
jetë mjaft e lehtë për ju për të shkruar dhe lexuar event procedutar dhe
per të rregulluar më lehtë programin tuaj më vonë.
MSc. Genci Berati Principe të Visual Basic 6.0
44
Një tjetër property e cila është e rëndësishme është ajo që realizon nëse
kontrolli juaj do të shfaqet apo jo në ekzekutim (Visible). Kjo property
mund vetëm të marrë vlerat False ose True.
Një property edhe më e rëndësishme është ajo që rregullon nëse
kontrolli është i mundshëm (Enable) apo jo.
Po paraqesim në figurë më poshtë propertitë e formës kryesore të
makinës llogaritëse.
MSc. Genci Berati Principe të Visual Basic 6.0
45
Kapitulli 5
Menaxhimi i të dhënave nga Visual Basic
Në në jetën e përditshme kemi të bëjmë me një numër shumë të madh
tipe të dhënash. Për shëmbull ne duhet të merremi me të dhëna si emra,
adresa, lekë, data, kuota stoku, statistika etj përditë. Po ashtu në Visual
Basic ne duhet të merremi me të tilla tipe të dhënash. Visual Basic i
ndan të dhënat në tipe të ndryshme.
5.1 Tipet e të dhënave në Visual Basic
Tipet e të dhënave ndahen në tipe numerike dhe jo numerike.
5.1.1 Të dhënat numerike (Numeric Data)
Të dhënat numerike janë ato që konsistojnë në numra të cilët mund të
llogariten matematikisht me veprime të ndryshme standarte si
mbledhja, zbritja, shumëzimi, pjestimi e kështu me rradhë, Në Visual
Basic, të dhënat numerike janë të ndara në 7 tipe. Ato janë të
përmbledhura në Tablën 5.1
Tabla 5.1: Tipet numerike të dhënave
Tipi Sasia ne
memorje Rrangu i vlerave
Byte 1 byte 0 to 255
Integer 2 bytes 32,768
deri 32,767
Long 4 bytes 2,147,483,648
deri 2,147,483,648
Single 4 bytes 3.402823E+
38 deri 1.401298E45
për vlerat negative
1.401298E45
deri 3.402823E+38 për vlerat pozitive
MSc. Genci Berati Principe të Visual Basic 6.0
46
5.1.2 Tipet jo numerike të të dhënave
Tipet jonumerike të të dhënave janë përmbledhur në Tablën 5.2
Tabla 5.2: Tipet jo numerike të të dhënave
Tipi i të dhënes hapësira në
memorje
Rrangu
String(gjatësi
fikse)
Gjatësia e string 1 deri 65,400 karaktere
String(gjatësi
variable)
Gjatësia + 10
bytes
0 deri 2 miliard karaktere
Date 8 bytes January 1, 100 deri December 31, 9999
Boolean 2 bytes Vertete ose Gabuar
Object 4 bytes Ndonjë object i futur
Variant(numeric) 16 bytes Ndonjë vlere sa Double
Variant(tekst) Gjatësia+22
bytes
E njëjtë me Variablin length string
5.1.3 Prapashtesat për Literalet
Literalet
janë vlera të cilat ju shënoni për një të dhënë . Në disa raste ne
duhet të shtojmë një prapashtesë prapa një Literal kështu Visual Basic
mund të bëj kalkulim me më saktësi. Për shëmbull ne mund të përdorim
num=2,3046# për një tip të dhenash Double. Disa nga shtesat janë
shfaqur në Tablën 5.3.
Tabla 5.3
shtesa Tipi i të dhenës
& Long
! Single
# Double
ë Currency
MSc. Genci Berati Principe të Visual Basic 6.0
47
Ne duhet të vendosim vlerën e variablit string (Literal) në mes dy
thonjëzave vlerën e variablit date dhe orë mes dy shenjave #. Stringu
mund të përmbajë çdo karakter përfshi edhe numrat. Më poshtë po
japim disa shëmbuj.
EmriAnëtarit="Turban, John."
NumriTel="1800900888777"
DataFillim=#31Dec00#
DataFund=#12:00 am#
5.2 Menaxhimi i Variablave
Variablat janë si kutitë e postës në në PTT. Përmbajtja e variablave
ndryshon herë pas here tamam si përmbajtja e kutive të postës. Në
terma të Visual Basic, variablat janë zona të lokalizuara në memorjen e
kompjuterit për të mbajtur të dhëna. Sikur në kutite e postës, çdo
variabli duhet t’i vihet një emër. P}r të emërtuar variablat në Visual
Basic duhet të ndiqen disa rregulla.
5.2.1 Emrat e variablave
Rregullat për të vendosur emrat e variablave në Visual Basic janë:
Emri duhet të ketë më pak se 255 karaktere
Nuk duhet të ketë hapësirë
Nuk duhet të fillojë me një numër
Pika nuk është e lejueshme
Shembuj emrash të vlefshëm dhe të pavlefshëm variablash janë në
Tablën 5.4
Tabla 5.4
Emra të vlefshëm Emra të pavlefshëm
Makina_pare Malina.pare
VitiNeVazhdim 1DjaleiRi
Emra_Tegjate_mund_te_perdoren Ai&Babai *& nuk është i
pranueshëm
MSc. Genci Berati Principe të Visual Basic 6.0
48
5.2.2 Deklarimi i Variablave
Në Visual Basic duhet t’i deklarojmë variablat para se t’i përdorim ato
duke përcaktuar emrin e variablit dhe tipin e të dhënës. Ato,
normalisht, deklarohen ne seleksionin General të dritares së kodit duke
përdorur 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 t’i deklaroni disa variabla në një rresht duke i ndarë me presje
si për shëmbull:
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. Për deklarimin e tipit string kemi dy
formate të mundshme, njëri për tipin e variablit string fiks dhe tjetri për
varialbin string të variushëm. Për variablin string të ndryshueshëm
përdiret e njëjta sintakse si në shembullin 5.1 më sipër . Për variablin
string fiks duhet të përdoret format i mëposhtëm:
Dim EmërVariabli as String * n, ku n përcakton numrin e karaktereve
që mund të mbajë ky variabël.
Shëmbulli 5.2:
Dim EmriJuaj as String * 10
EmriJuaj mund të mbaj jo më shumë se 10 karaktere.
MSc. Genci Berati Principe të Visual Basic 6.0
49
Kapitulli 6
Puna me Variablat
6.1 Dhënia e vlerave të variablave
Pasi kemi deklaruar variablat duke përdorur instruksionin Dim, ne
mund të vendosim vlerat në këto variabla.
Formati i përgjithshëm i një deklarimi është
Variabël=Shprehje
Një Variabl mund të jetë një variabël 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 shëmbuj:
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 Operatorët në Visual Basic
Në mënyrë që të llogarisim inputet e përdoruesit dhe të gjenerojmë
rezultatet ne duhet të përdorim një sërë operatorësh matematikë. Në
MSc. Genci Berati Principe të Visual Basic 6.0
50
Visual Basic, përveç + dhe ,
simbolet për operatorët matematike janë të
ndryshëm nga ato normale, si shihen në. Tablën 6.1.
Tabla 6.1
Operatori Funksioni
Matematik
Shembull
^ Fuqi 2^4=16
* Shumzim 4*3=12
/ Pjestim 12/4=3
Mod Modulus (jep
mbetjen nga një
pjestim i plotë)
15 Mod 4=3
\ Pjestim i Plote (heq
numrat mas presjes)
19\4=4
+ ose & Lidhje String "Visual"&"Basic"="Visual Basic"
Shëmbull 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
Këtu ne do të mësojmë se si të përdorim në kodin e Visual Basic.
MSc. Genci Berati Principe të Visual Basic 6.0
51
Kapitulli 7
Kontrolli i rrjedhshmërisë së programit
7.1 Opreratorët e krahasimit
Për të realizuar vijueshmërinë e një programi në Visual Basic, ne mund
të përdorim një sërë operatorësh të krahasimit. Parimisht operatorët e
krahasimit i ngjajnë operatorëve matematik. Operatorët e krahasimit
janë instrumente shumë të rendësishme, të cilët lejojnë programin e
Visual Basic të krahasojnë vlerat e dhëna dhe të vendos se çfarë veprimi
të kryej, të ekzekutojë një program apo të përfundojë një tjetër. Këto
operatorë janë treguar në Tablën 7.1.
Tabla 7.1: Operatorët e krahasimit
Operatori Kuptimi
= I njëjtë me
> Më i madh se
< Me e vogël se
>= Më i madh se ose baraz
<= Më i vogël se ose baraz
<> I ndryshëm nga
* Ju mundet gjithashtu të krahasoni edhe string nëpërmjet këtyre
operatorëve. Gjithsesi janë disa rregulla për tu ndjekur:
Gërmat e mëdha janë më të vogla se gërmat e vogla,
"A"<"B"<"C"<"D".......<"Z" dhe numrat janë më të vegjël se germat.
MSc. Genci Berati Principe të Visual Basic 6.0
52
7.2 Operatorët Logjik
Plus operatorëve të kondicionuar kemi edhe disa operatorë logjikë të
cilët ofrojnë më tepër mundësi në Visua Basic. Këto operatorë shfaqen
në Tablën 7.2.
Tabla 7.2
Operator Kuptimi
And Të dyja anët duhet të jenë të vërteta
or Njëra anë ose tjetra duhet të jetë e vërtetë
Xor Ose njëra anë ose tjetra duhet të jenë të vërtetë
Not E kunderta e vertetë
7.3 Përdorimi i If.....Then.....Else me operatorë
Për një kontroll efektiv të vijimsisë së një programi në Visual Basic, ne
duhet të përdorim instruksionet If …Then…Else së bshku me operatorët
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
MSc. Genci Berati Principe të Visual Basic 6.0
53
correct.Visible = True
wrong.Visible = False
Else
correct.Visible = False
wrong.Visible = True
End If
End Sub
Për më shumë shembuj për instruksionet If...Then...Else, shiko shëmbujt
më poshtë
Shëmbull 7.3.2:
Kodi i programit
Dim num1 As Integer
Dim num2 As Integer
Dim intNumber As Integer
MSc. Genci Berati Principe të Visual Basic 6.0
54
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
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
MSc. Genci Berati Principe të Visual Basic 6.0
55
Private Sub Form_Load()
Image1.Visible = False
Image2.Visible = False
Label6.Visible = False
Label5.Visible = False
End Sub
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
MSc. Genci Berati Principe të Visual Basic 6.0
56
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
MSc. Genci Berati Principe të Visual Basic 6.0
57
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
Shëmbull 7.3.3:
Përdorimi i If....Then....Else
MSc. Genci Berati Principe të Visual Basic 6.0
58
Në këtë program, ju duhet të krijoni tre kutia teksti (Textbox), tre kuti
etikete(LabelBox), një imazh dhe katër 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. Qëllimi i saj është të paraqesë nëse
përgjigja është e saktë apo jo. Tani ndrysho emrat e butonave në Start,
Next, OK dhe Stop, ju mund ta bëni këtë duke ndryshuar përkatësisht
titujt përkatës.
Ju duhet të vizatoni një vijë dhe të futni një imazh në image box si
paraqitet në programin mësipër.
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
MSc. Genci Berati Principe të Visual Basic 6.0
59
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
Nëse ju doni që përdoruesi të shtyp tastin Enter pasi të shkruaj
përgjigjen, duhet të shkruani një procedurë për 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 përdoruesi duhet të shtypet butoni
Start. Vendosni dy numra në dy textboxet
e para. Perdoruesi duhet të
fusë përgjigjen dhe të shtyp butonin OK. Përdoruesi do të njohë në se
përgjigja është e saktë apo e gabuar në label3. Për ta përfunduar,
shtypni butonin Stop.
Në këtë program ju duhet të dini se çfarë është funksioni Rnd dhe Int.
Rnd jep një numër të çfardoshëm mes 0 dhe 1, kurse Int jep numrin e
plotë më të afert të numrit të dhënë.
MSc. Genci Berati Principe të Visual Basic 6.0
60
Shëmbull:
if Rnd=0.7423
100*Rnd=74.23
Int(100*Rnd)=74
Nga kombinimi i funksioneve Rnd dhe Int, ne mund të gjenerojmë
numra të plotë të çdo rendi. Funksioni Str$ përdoret për të konvertuar
një numër në tekst, kurse funksioni Val konverton tekstin në numër.
Provo të implementosh në Visual Basic programin më sipër.
MSc. Genci Berati Principe të Visual Basic 6.0
61
Kapitulli 8:
Më tepër për Kontrollin e programit
8.1 Select Case
Në qoftë se ju keni shumë kushte, përdorimi i If..Then..Else mund të
mos jetë shumë i përshtatshem. Për kushte logjike të përsërotura është
më mirë të përdoret Select Case
Formati është:
Select Case shprehje
Case vlerë1
Bllok i n jë ose më shume instruksioneve të Visual Basic
Case vlerë2
Bllok i n jë ose më shume instruksioneve të Visual Basic
Case vlerë3
Bllok i n jë ose më shume instruksioneve të Visual Basic
Case vlerë4
.
.
.
Case Else
Bllok i n jë ose më shume instruksioneve të Visual Basic
End Select
* Tipi i të dhënave të përdorura në shprehje duhet t’i korrespondoje asaj
të Case selekt.
8.2 Shëmbull
Shëmbull 8.1
Ekzaminimi i gradëve
MSc. Genci Berati Principe të Visual Basic 6.0
62
Dim grade As String
Private Sub Llogarit_Click( )
grade=txtgrade.Text
Select Case grade
Case "A"
rezultat.Caption="Shkëlqyeshëm"
Case "A"
rezultat.Caption="Shumë mirë"
Case "B"
rezultat.Caption="Mirë"
Case "C"
rezultat.Caption="Kalueshëm"
Case Else
rezultat.Caption="Dështim"
End Select
*Shikoni që grade është variabël string, kështu edhe vlerat e case select
janë të tilla si p.sh. “A”.
Shëmbull 8.2
Dim nota As Single
Private Sub Llogarit_Click()
'Ekzaminimi i notave
Notë = not.Text
Select Case notë
Case Is >= 85
koment.Caption = "Shkëlqyeshëm"
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
MSc. Genci Berati Principe të Visual Basic 6.0
63
*Ne përdorim këtu Is për të imponuar konditën. Kjo përdoret zakonisht
për të dhënat numerike.
Shëmbull 8.3
Shëmbulli 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 = "Shkëlqyeshëm"
End Select
End Sub
MSc. Genci Berati Principe të Visual Basic 6.0
64
Kapitulli 9
Looping
Visual Basic lejon që një proçedurë të përsëritet aq herë sa mund ta
lejojë proçesori. 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ë
Shëmbull 9.1
Do while numrator <=1000
num.Text=numrator
numrator = numrator +1
Loop
* Shëmbulli i mësipërm rrit variablin numerator derisa ai të jetë>1000.
Shëmbulli i mësipërm mund të shkruhej edhe
MSc. Genci Berati Principe të Visual Basic 6.0
65
Do
num.Text= numrator
numrator = numrator +1
Loop until numrator >1000
9.2 For....Next Loop
Formati është:
For numrator =fillimNumer to fundNumer (Hap i rritjes)
Një ose më shumë instruksione të Visual Basic
Next
Shëmbull:
(a) For numrator =1 to 10
shfaq.Text= numrator
Next
(b) For numrator =1 to 1000 step 10
numrator = numrator +1
Next
(c) For numrator =1000 to 5 step 5
numrator = numrator 10
Next
MSc. Genci Berati Principe të Visual Basic 6.0
66
Kapitulli 10
Njohuri mbi funksionet e Visual Basic Pjesa
I
Funksionet jane të ngjashme me procedurat normale, por qëllimi
kryesor i funksioneve është të pranoje disa inpute dhe t’i kalojë ato në
programin kryesor për të përfunduar ekzekutimin. Janë dy tipe
funsionesh, funksionet builtin
(ose funksionet e veta) dhe funksiopnet e
krijuara nga programatori.
Format i përgjithshëm i funksionit është:
EmërFunksioni(argument)
ku argumentet janë vlera që kalojnë në funksion .
Në ketë kapitull ne po mundohemi të mësojmë dy nga funksionet më të
përdorshme të Visual Basic që janë funksionet MsgBox() dhe
InputBox().
10.1 Funksioni MsgBox ( )
Qëllimi i funksionit MsgBox është të krijojë një mesazh të menjëhershëm
dhe të detyrojë përdoruesin të klikojë në një buton para se ai të
vazhdojë. Ky mesazh ka formatin e mëposhtëm.
MsgJuaj=MsgBox(Replika, Vlera e Stilit, Titulli)
Argument ii parë,Replika, do t’ju paraqesë mesazhin e duhur. Vlera e
stilit do t’ju përcaktoje se çfarë tipe komandash do të shfaqen në kutine
e mesazhit, referoju Tablës 10.1 për tippet e butonave që mund të
shfaqen. Titulli do të shfaq titullin e kutise së mesazhit.
MSc. Genci Berati Principe të Visual Basic 6.0
67
Tabla 10.1: Vlerat e stileve
Vlera e
stilit Emri konstant Butoni i shfaqur
0 vbOkOnly Ok butoni
1 vbOkCancel Butoni Ok dhe Cancel
2 vbAbortRetryIgnore Butoni Abort, Retry dhe Ignore.
3 vbYesNoCancel Butoni Yes, No dhe Cancel
4 vbYesNo Butoni Yes dhe No
5 vbRetryCancel Butoni Retry dhe Cancel
Për ta bërë programin më të thjeshtë për për ta lexuar, në vënd të
numrit perkatës ne mund të përdorim 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 për të vazhduar", 1, "Mënuja Kryesore")
dhe MsgJuaj=Msg("Kliko OK për të vazhduar".
vbOkCancel,"Menuja Kryesore")
janë të njëjtë.
MsgJuaj është një variabël i cili mban ato vlera që jep funksioni MsgBox
( ). Vlerat janë të përcaktuara nga tipi i butonit që ka klikuar përdoruesi
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 Emri Konstant Butoni i shtypur
1 vbOk Butoni Ok
2 vbCancel Butoni Cancel
3 vbAbort Butoni Abort
4 vbRetry Butoni Retry
5 vbIgnore Butoni Ignore
6 vbYes Butoni Yes
7 vbNo Butoni No
MSc. Genci Berati Principe të Visual Basic 6.0
68
Shembull 10.1
Ndërfaqja grafike:
Vizatoni tre butona komandash dhe një etiketë (label) si në Figurën 10.1
Figura 10.1
Proçdura për butonin Test në ngjarjen e klikimit mbi këtë 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 suksesshëm"
Else
shfaq.Caption = "Testimi i dështuar"
End If
End Sub
Kur një përdorues klikon në butonin test, do të na shfaqet imazhi si në
Figureën 10.2. Nëse përdoruesi i programit klikon në butonin OK,
atëherë do të na shfaqet mesazhi “Testimi i suksesshëm” dhe kur
MSc. Genci Berati Principe të Visual Basic 6.0
69
përdoruesi të klikojë në butonin cancel do të shfaqet mesazhi “Testimi i
deshtuar”.
Figure 10.2
Për të bërë 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 katër tipe ikonash si në Tablën 10.3
Tabla 10.3
Vlera Emri Konstantit Ikona
16 vbCritical
32 vbQuestion
48 vbExclamation
64 vbInformation
Shembull 10.2
Në këtë shëmbull do të shfaqet mesazhi si në figureën 10.3:
MSc. Genci Berati Principe të Visual Basic 6.0
70
Figura 10.3
Ju mund të ndërtoni të njëjtiten ndërfaqje si në shëmbullin 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 suksesshëm"
ElseIf testMsg2 = 7 Then
shfaq2.Caption = "A jeni i sigurtë?"
Else
shfaq2.Caption = "Testimi i dështuar"
End If
End Sub
10.2 Funksioni InputBox( )
Funksioni InputBox( ) ba shfaq një kuti mesazhi në të cilën përdoruesi
mund të shënojë një vlerë apo një mesazh në formën e tekstit. Format i
deklarimit të këtij funksioni është:
MesazhiIm=InputBox(Replika, Titulli, Teksti_definitiv, pozicionix,
pozicioniy)
MesazhiIm ëhstë një variabël i tipit variant, por shpesh deklarohet si
string, i cili pranon vlera nga përdoruesi në mënyrë interative.
Argumentet shpjegohen si më poshtë:
Replika Mesazhi
i paraqitur normalisht sin jë pyetje.
Titulli Titulli
i Input Box.
MSc. Genci Berati Principe të Visual Basic 6.0
71
Teksti_definitiv Teksti
që shfaqet në kutinë e inputit të cilën
përdoruesi mund ta përdori
Pozicionix
dhe Pozicioniy
janë koordinatat e kutisë sëinput box.
Shëmbull 10.3
Ndërfaqja grafike
Figura 10.4
Proçedura për butoni OK në ngjarjen e klikimit mbi këtë buton.
Private Sub OK_Click()
Dim MsgPerd As String
MsgPerd = InputBox("Cili është measazhi juaj?", "Mesazhi i formës
Enter", "Fut mesazhi tuaj këtu", 500, 700)
If MsgPerd <> "" Then
mesazh.Caption = MsgPerd
Else
message.Caption = "No Message"
End If
End Sub
Kur një përdorues klikon në butonin OK, do të shfaqet mesazhi si në
figureën 10.5. Më pas përdoruesi duke shkruar mesazhin dhe duke
klikuar në butonin OK, nxjerr mesazhin e shkruar në kutinë përkatëse.
Ndërsa nëse shtypët Cancel atëherë do të shfaqet “Nuk ka mesazh”.
MSc. Genci Berati Principe të Visual Basic 6.0
72
MSc. Genci Berati Principe të Visual Basic 6.0
73
Kapitulli 11
Njohuri mbi funksionet e Visual Basic Pjesa
II
11.1 Krijimi i n jë Funskioni nga programuesi
Format i përgjithshëm i deklarimit të një funksioni nga programuesi:
Public Function EmriFunksionit (Argument As TipiDhanës,..........) As
TipiDhanës
Ose
Private EmriFunksionit (Argument As TipiDhanës,..........) As
TipiDhanës
* Public do të thotë që funksioni është i aplikueshëm në të gjithë
programin kurse Private tregon se funksioni është i aplikueshëm vetën
në procedurën ose modulin konkret, në përdorim.
Shëmbull 11.1
Në këtë shëmbull, një përdorues mund të llogarite sasinë e lekëve qe ka
në bazë të interesit banker dhe numrit të viteve. Llogaritja bazohet në
koefiçentin e interesit.
MSc. Genci Berati Principe të Visual Basic 6.0
74
Public Function VA(PV As Variant, i As Variant, n As Variant) As
Variant
'Formula për të llogaritë Vlerën 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ë Vlerën 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 mëposhtëm llogarit në mënyrë automatike gradët në varësi të
notave që marrin nxënësit.
MSc. Genci Berati Principe të Visual Basic 6.0
75
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
MSc. Genci Berati Principe të Visual Basic 6.0
76
Kapitulli 12
Krijimi i Funksioneve të Visual Basic për Microsof Excel
12.2 Pse është e nevojshme të krijohen funksione nga përdoruesi në
MS Excel?
Ju mund të krijoni funksionet tuaja përveç atyre të ofruara nga
Spreadsheet i Excelit,
të cilat duhet thëne se janë të limituara. Këto
funksione mund të jenë shumë të fuqishme nëqoftë se ju do të dini si t’i
krijoni dhe t’i përdorni. Një nga arsyet më kryesore përse ne duhet të
krijojme një funksion është për të bërë të mundur të organizojmë
mjedisin e spreadsheetit
për nevojat tona. Për shëmbull ne mund të
kemi nevojë të llogarisim përqindjen e kamarierëve të një lokali në
varësi të xhiros ditore e cila është mjaft komplekse nëse nuk përdorim
një funksion tonin, por vetëm ato të përcaktuara nga Excel. Shikoni në
tableën më poshtë:
Tabla 12.1: Përqindja e kamarierëve në varsi të xhiros ditore
Xhiro(Lekë) Përqindja
<500 3%
500<1000 6%
1000<2000 9%
2000<5000 12%
>5000 15%
Në shëmbullin më sipër, nëse një kamarier realizon një xhiro prej 6000
lekësh, ai do të shpërblehet me 6000x12%=720.00.mund të shkruhet një
funksion në Visual Basic i cili të llogaritë automatikisht vlerë e
përqindjes si më poshtë:
Function Përq(Xhiro_V As Variant) as Variant
If Xhiro_V <500 Then
MSc. Genci Berati Principe të Visual Basic 6.0
77
Përq=Xhiro_V*0.03
Elseif Xhiro_V>=500 and Xhiro_V <1000 Then
Përq = Xhiro_V*0.06
Elseif Xhiro_V >=1000 and Xhiro_V <2000 Then
Përq = Xhiro_V *0.09
Elseif Xhiro_V >=200 and Xhiro_V <5000 Then
Përq = Xhiro_V *0.12
Elseif Xhiro_V >=5000 Then
Përq = Xhiro_V *0.15
End If
End Function
12.2 Përdorimi i Microsoft Excel Visual Basic Editorit
P}r të krijuar një funksion të përdoruesit në MS Excel, ju mund të
klikoni në tools, select macro dhe pastaj klikoni në Visual Basic Editor
siç paraqitet në Figurën 12.1
Figura 12.1: Hapja e Ms_Excel Visual Basic Editor
MSc. Genci Berati Principe të Visual Basic 6.0
78
Pasi keni klikuar në Visual Basic Editor, ai do t’ju paraqitet si në
figureën 12.2. për të krijuar një funksion, shkruani si në shembullin e
seksionit 12.1 më sipër funksionin ose tamam si në figureën 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 Përqindja e Kamarierit. SI tregohet në
figureën 12.3, vendos funksionin Përq në qelizën C4 dhe referojuni
vlerës së qelizës B4, duke përdorur formatin Përq(B4). Çfardo vlere që të
vedoset në qelizën B4 menjëherë do të reflektojë në qelizën C4 ku është
vendosur funksioni Përq. Për rreshtat më poshtë është e mjaftueshme
vetëm të kopjohet formula me tërheqje (Drag) në cepin e djathte poshtë
qelizes C4 poshtë në qelizat e kërkuara dhe menjëherë një tableë e
këndhme dhe e rregullt do të na shfaqet duke treguar përqindjet
MSc. Genci Berati Principe të Visual Basic 6.0
79
automatikisht. Vlerat në këtë tableë mund të ndryshohen automatikisht
në varësi të xhirove ditore.
Figura 12.3: Dritarja e MS Excel për Xhiron Ditore të Kamarierëve
MSc. Genci Berati Principe të Visual Basic 6.0
80
Kapitulli 13: Tabelat (Arrays)
13.1 Njohja me Tabelat
Me pëçrkufizim, një array është një listë variablash të gjitha të të njëjtit
tip dhe me të njëjtin emër. Kur ne punojmë vetëm me një fushë, ne na
duhet vetëm një variabël. Në qoftë se n ekemi të bëjmë me një listë
fushash të të njëjtit tip (p. sh. String) atëherë këshillohet të deklarohet
një array (tableë) variablash në vend që të deklaronim nga një variab\l
për secilën fushë. Për shëmbull në se do të duhej të trajtonim njëqind
emra, në vend që të deklaronim 100 variabla , ne deklarojmë vetëm një
array. Ne mundet që të dallojmë secilën fushë në array duke shfrytëzuar
vlerën e indeksit për secilën fushë. Për shëmbull Emri(1), Emri(2),
Emri(3)….etj.
13.2 Deklarimi i Tabelës
Ne mund të përdorim instruksionin Public ose Dim për të deklaruar një
Tabelë në të njëjtën rrugë me të cilën deklarojmë një variabël të singël.
Instruksioni Public e deklaron variablin Array të mundshëm për tu
përdorur në të gjitha modulet e aplikacionit. Instruksioni Dim e
deklaron të përdorshëm vetëm në proceduren aktuale në përdorim.
Format ii përgjithshëm i deklarimit të tableës në Visual Basic është:
Dim EmerTabele(subs) as Tipi
Ku subs tregon indeksin e fundit në array.
Shëmbull 13.1
Dim EmerKlienti(10) as String
Ky shembull deklaron një tableë (array) që konsiston në 10 elemente.
Nëse në instruksionin e deklarimit shfaqet 1 atëherë elementet fillojnë
nga EmriKlientit(1) deri në EmriKlientit(10) përndryshe do të jenë 11
elemente të mundshme në tableë EmriKlientit(0) deri EmriKlientit(10)
MSc. Genci Berati Principe të Visual Basic 6.0
81
Shembull 13.2
Dim Numëro(100 to 500) as Integer
Deklaron një tableë e cila konsiston në elementin e parë që fillon nga
Numëro(100) dhe mbaron me Numëro(500)
13.3 Programe shembuj
Ndërfaqja grafike
e
Kodi
Dim EmriStudentit(10) As String
Dim num As Integer
Private Sub shtoEmër()
For num = 1 To 10
EmriStudentit(num) = InputBox("Fut Emrin e Studentit", "Fut Emër", "",
1500, 4500)
MSc. Genci Berati Principe të Visual Basic 6.0
82
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
shtoEmër
End Sub
Programi më sipër pranon të dhëna në kutinë e mesazhit dhe pastaj i
shfaq në formën përkatëse. Si edhe shihet ky program lejon që të futen
në formë vetëm 10 emra sa herë që klikohet butoni start
Ndërfaqja grafike
Kodi
MSc. Genci Berati Principe të Visual Basic 6.0
83
Dim EmriStudentit(10) As String
Dim num As Integer
Private Sub shtoEmër( )
For num = 1 To 10
ErmiStudentit(num) = InputBox("Fut emrin e studentit")
List1.AddItem ErmiStudentit (num)
Next
End Sub
Private Sub Start_Click()
shotEmër
End Sub
Program ii mësipërm fut emrat e studentave nga kutia e mesazhit inbox
dhe i vendos ato në një listbox.
MSc. Genci Berati Principe të Visual Basic 6.0
84
Kapitulli 14: Puna me skedarët
14.1 Prezantim
Deri në kapitullin 13 ne kemi parë programe të cilët pranojnë të dhëna
të cilat prezantohen në kohen e ekzekutimit, kur programi përfundon,
te dhenat do të humbin. Është e mundur që të ruhen në mënyrë të
përhershme të dhënat që pranohen në programin e Visual Basic në një
njësi memorje të përhershme si Hard Disk Drive p.sh. ose Disketë bile
edhe në CDRW.
Në ketë kapitull do të mësojmë se si të krijojmë
skedarë duke i ruajtur ato në njësitë e memorjes së përhershme dhe se si
t’i tërheqim të dhënat nga këto skedarë në programin tonë të krijuar me
Visual Basic.
14.2 Krijimi i skedarëve
Për të krijuar skedarë në Visual Basic përdorim komandat në formatin
më poshtë.
Open "emrskedari" For Output As çnumerskedari
Çdo skedar duhet të ketë një emer dhe një numër për tu identifikuar. P}r
emrin e skedarit , ju duhet të specifikoni edhe pozicionin ne të cilin ai
do të ndodhet (path).
Për 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 shoqërues i ketij skedari është 1. Në qoftë se ju doni
ta krijoni ketë skedar në disketë (drive A) thjeshtë ndrysho adresën e
skedarit
Open "A:\shembull.txt" For Output As ç1
Në se ju doni të krijoni një skedar HTML thjesht ju duhet të ndërroni
prapashtesën 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")
MSc. Genci Berati Principe të Visual Basic 6.0
85
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ë gatshëm për të pranuar inpute nga përdoruesi. Çdo input
të dhënash do të ruhen në këtë skedar tekst.
14.3 Leximi i skedarëve
Për të lexuar skedarin e krijuar me instruksionet e seksionit 14.2 ju
mund të përdorn instruksionin inputç. Megjithatë ne mund të lexojmë
skedarët në varësi të formatit me të cilin ata janë shkruar. Ju mund të
hapni skedarin ne bazë të numrit të tij përkatës dhe variablit qe mban të
dhenat Ne gjithashtu duhet të përdorim instruksioni DIM për 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 për të lexuar të dënat
dhe për t’i hedhur në skedarin destinacion text1.txt.
MSc. Genci Berati Principe të Visual Basic 6.0
86
Kapitulli 15: Krijimi i një aplikacioni multimedialPjesa
1
Ne mund të krijojmë një sërë aplikacinesh multimedialë në Visual Basic.
Për shembull mund të ndërtojmë apliakcione të cilat lexojnë skedarët
audio, CD, VCD, skedarët video etj.
P}r të qënë të aftë të luajmë skedarët multimedialë nëpërmjet 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ë përfshirë 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 përkatëse.
15.1 Krijimi in jë CD playeri
(a) Ndërfaqja grafike
Private Sub Form_Load()
'Pozicionon formën në qendër
Left = (Screen.Width Width)
\ 2
Top = (Screen.Height Height)
\ 2
'Hap CD
myCD.Command = "Open"
MSc. Genci Berati Principe të Visual Basic 6.0
87
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
MSc. Genci Berati Principe të Visual Basic 6.0
88
Kapitulli 16: Krijimi i aplikacionit multimedialPjesa2
Në kapitujt e mëparshëm ne kemi programuar një CD player. Tani, me
disa modifikume, ne do të rtansformojmë ketë CD player në audio file
player (luajtes të skdarëve audio). Ky lexues i këtyre skedarëve duhet të
krijohet në një rrugë të tillë që të kërkojë në driverat tuaj për skedarë
WAVE dhe midi dhe t’i luaj ato.
Në ketë projekt ne duhet të futim një ComboBox, një DriveListBox, një
DirListBox, një TextBox dhe një FileListBox në formën tonë.Unë do të
përpiqem të tregoj funksionin e secilit kontroll të përmendur më sipër.
Pastaj, ju duhet të futni Microsoft Multimedia Control(MMControl) në
formën tuaj, Ju mund ta bëni ketë MMControl të dukshëm ose të
padukshëm në kohen e ekzekutimit të aplikacionit tuaj. Unë do të
preferoja të mos e shfaq dhe të përdor keshtu command butona për ta
kontrolluar playerin.
Kontrollet e formes duhen përkatësisht:
ComboBoxpër
të shfaqur dhe për të aktivizuar sesioni e tipeve të
ndryshme të skedarëve.
DriveListBoxpër
të mundësuar zgjedhjen e driverave
të ndryshëm në
kompjuterin tuaj.
DirListBox – për të shfaqur direktoritë
TextBox – për të shfaqur skedarët e selektuar.
FileListBoxpër
të shfaqur skedarët e vlefshem për tu ekzekutuar
Duhet të shkruhen kode përkatëse për të koordinuar të gjitha kontrollet
e mësipërme, në mënyrë që aplikimi të punojë saktë. Programi duhet të
rrjedhë në këtë rrugë logjike:
Step 1: Përdoruesi zgjedh tipin e skedarëve që dëshëron të luaj
Step2: Pëdoruesi zgjedh driverin
ku mendon se ndodhe skedarë të cilet
kërkon t’I ekzekutojë.
Step 3:Përdoruesi shikon në direktoritë dhe nën direktoritë e driverit

zgjedhur për ndonjë skedarë të tipit të zgjedhur në Hapin 1. skedarët do
të paraqiten në FileListBox.
Step 4: Përdoruesi zgjedh skedarin nga FileListBox dhe klikon butonin
Play
Step 5: Përdoruesi shtyp butonin Stop për të ndaluar ekzekutimin e
skedarit audio dhe butonin Exit për të përfunduar aplikacionin.
Ndërfaqja grafike
MSc. Genci Berati Principe të Visual Basic 6.0
89
Kodi
Private Sub Combo1_Change()
' për të përcaktuar 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()
'Për të ndërruar direktorit dhe nëndirektoritë (ose folders dhe
subfolders)
File1.Path = Dir1.Path
If Combo1.ListIndex = 0 Then
File1.Pattern = ("*.wav")
ElseIf Combo1.ListIndex = 1 Then
MSc. Genci Berati Principe të Visual Basic 6.0
90
File1.Pattern = ("*.mid")
Else
File1.Pattern = ("*.*")
End If
End Sub
Private Sub Drive1_Change()
'Për të ndërruar 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
Private Sub Form_Load()
'Për të pozicionuar në qëndër 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"
MSc. Genci Berati Principe të Visual Basic 6.0
91
End Sub
Private Sub AudioPlayer_Click()
End Sub
Private Sub play_Click()
'Për të luajtur skedarët 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
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
MSc. Genci Berati Principe të Visual Basic 6.0
92
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ë ndërtohet në një mënyrë të
tillë që të kërkojë për të gjitha tipet e skedarëve grafikë në driverat
e
kompjuterit tuaj.
Njëlloj si në projektin paraardhe në këtë projekt do të na nevoitet një
ComboBox, një DriveListBox, një DirListBox, një TextBox dhe një
FileListBox në formën tuaj. Unë do të mundohem të tregoj shkurtimisht
funksionin e secilit prej kontrollerave të permendur.
ComboBoxShërben
për të paraqitur dhe aktivizuar sesionin e
skedarëve të tipeve të ndryshme..
DriveListBoxHSërben
për të mundësuar zgjedhjen e driverave të
mundshëm në kompjuterin tuaj (p.sh. driverin c:\ ose d:\)
DirListBox – Për të shfaqur direktoritë.
TextBox – Për të shfaqur skedarët e zgjedhur.
FileListBoxPër
të shfaqur skedarët që janë të munshëm për t’u lujt.
Për të koordinuar kontrollerat e përmendur më sipër dhe në mënyrë që
programi të funskionojë si duhet duhet të shkruhet kodi përkatës.
Programi duhet të ndjeki këtë rrjedhë logjike.
Hapi1: Përdoruesi zgjedh tipin e skadarit që dëshëron të ekzekutojë.
Hapi 2:Përdoruesi zgjedh driverin në të cilin mund të ndodhet skedarik
grafik..
Hapi 3:Përdoruesi kontrollon nëpër direktoritë dhe nëndirektoritë për
skedarë të specifikuar në hapin 1. Skedarët duhet të afishohen në
FileListBox.
Hapi 4: P}rdoruesi zgjedh skedarin nga FileListBox dhe klikon në
butonin Shfaq.
Hapi 5: Përdoruesi klikon në butonin Exit për të dalë nga alikacioni.
Ndërfaqja grafike
MSc. Genci Berati Principe të Visual Basic 6.0
93
Kodi
Private Sub Form_Load()
Left = (Screen.Width Width)
\ 2
Top = (Screen.Height Height)
\ 2
Combo1.Text = "Të gjithë skedarët 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
MSc. Genci Berati Principe të Visual Basic 6.0
94
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
MSc. Genci Berati Principe të Visual Basic 6.0
95
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
MSc. Genci Berati Principe të Visual Basic 6.0
96
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ë këtë audio player në një
muldtimedia player i cili mund të ekzekutojë të gjitha llojet e skedarëve
video përveç atyre audio.
Në këtë projekt ju duhet te perdorni në formën tuaj një ComboBox, një
DriveListBox, një DirListBox, një TextBox ,një FileListBox dhe një kuti
picture (picture box) për të luajtur skedarin audiovideo.
Unë do të
përshkruaj funksionin e secilës prej kontrolleve të përmendura më sipër.
Control(MMControl) në formën tuaj, Ju mund ta bëni ketë MMControl
të dukshëm ose të padukshëm në kohen e ekzekutimit të aplikacionit
tuaj. Unë do të preferoja të mos e shfaq dhe të përdor keshtu command
butona për ta kontrolluar playerin.
ComboBoxShërben
për të paraqitur dhe aktivizuar sesionin e
skedarëve të tipeve të ndryshme..
DriveListBoxShërben
për të mundësuar zgjedhjen e driverave të
mundshëm në kompjuterin tuaj (p.sh. driverin c:\ ose d:\)
DirListBox – Për të shfaqur direktoritë.
TextBox – Për të shfaqur skedarët e zgjedhur.
FileListBoxPër
të shfaqur skedarët që janë të munshëm për t’u lujt.
Për të koordinuar kontrollerat e përmendur më sipër dhe në mënyrë që
programi të funskionojë si duhet duhet të shkruhet kodi përkatës.
Programi duhet të ndjeki këtë rrjedhë logjike.
Hapi1: Përdoruesi zgjedh tipin e skadarit që dëshëron të ekzekutojë.
Hapi 2:Përdoruesi zgjedh driverin në të cilin mund të ndodhet skedari
audio..
Hapi 3:Përdoruesi kontrollon nëpër direktoritë dhe nëndirektoritë për
skedarë të specifikuar në hapin 1. Skedarët duhet të afishohen në
FileListBox.
Hapi 4: Përdoruesi zgjedh skedarin nga FileListBox dhe klikon në
butonin Luaj.
Hapi 5: Përdoruesi klikon në butonin Stop dhe butonin Exit për të dalë
nga alikacioni.
Nderfaqja grafike
MSc. Genci Berati Principe të Visual Basic 6.0
97
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")
MSc. Genci Berati Principe të Visual Basic 6.0
98
ElseIf ListIndex = 1 Then
File1.Pattern = ("*.mid")
ElseIf ListIndex = 2 Then
File1.Pattern = ("*.avi;*.mpg")
Else
Fiel1.Pattern = ("*.*")
End If
End Sub
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
MSc. Genci Berati Principe të Visual Basic 6.0
99
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 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
MSc. Genci Berati Principe të Visual Basic 6.0
100
Kapitulli 19: Krijimi I një aplikacioni me bazë të dhënash në VBPjesa
e parë
Visual Basic na lejon ne të manaxhojmë database te krijuar nga një
program tjetër për database siç janë p.sh. MS Access, Dbase, Paradox etj.
Në këtë kapitull nuk do të merremi me mënyrë ne si krijohen skedarë
database, por do të shohim se si do të mund të lidhim skedarët database
me mjedisin e VB.
Në shëmbullin më poshtë ne do të krijojmë një aplikim database të
thjeshtë i cili do të na lejojë ne të shohim ne rradhe emrat e klientëve.
Pèr të krijuar këtë aplikacion duhet të fusim kontrollin e të dhënave
(data control) në formë ne re të projektit tonë. Vendoseni këtë data
control diku poshtë në formë. Emërto këtë data control me emrin
data_navigator. Për të qënë të aftë të përdorim data controllerin
duhet
ta lidhim atë me ndonjë database. Ne mund të krijojmë nje database
duke përdorur ndonjë DBMS (database management systems), por unë
sugjeroj që të përdorim ndonjë skedarë database që instalohet bashke
me programin Visual Basic. Le të zgjedhim NWIND.MDB si skedarë
database. Për të lidhur data controlerin
tonë me këtë databese, bëni
dopio klik në DatabaseName tek dritarja e propertive dhe zgjidh
skedarin e sipërpërmendur NWIND:MDB. Më tej bëj dopio klik në
RecordSource dhe zgjidh aty tabelën e klientave (customers) nga
database.
Ju mund të zgjidhni gjithashtu një tjetër caption për data controlerin,
unë kam zgjedhur “Kliko për të kontrolluar klientat”. Pastaj ju mundtë
futni një etiketë (label) dhe të ndrroni caption për 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ë shëtisim në rekordet e databasit
tonë aty të shfaqen emrat përkatës të klientëve. Ne duhet të lidhim këtë
txt box me data controlin
tonë. Për këtë duhet të hapim propërtinë
DataSource të txt boxit
të formës tonë. Menjëherë do të na shfaqet emri
i data kontrollerit tonë, të cilin ne duhet ta zgjedhim. Nuk mjafton
vetëm kaq për të lidhur text boxin
me klientat, ne duhet të lidhim edhe
fushen në të cilën ndodhen klientat ne database me text box. Pèr të
realizuar këtë hapin propertinë DataField të text boxit
to formës tonë
dhe zgjedhim fushën ContactName. Mbasi kemi realizuar veprimet si
mësipër shtypim butonin fF5 ose butonin Run. Ju do të mund të shëtisni
në të gjithë emrat e klientave duke klikuar në shigjetën e data
kontrollerit
të formës.
MSc. Genci Berati Principe të Visual Basic 6.0
101
Ndërfaqja grafike
Ndërfaqja grafike (pas ekzekutimit
tprogramit)
MSc. Genci Berati Principe të Visual Basic 6.0
102
Ju mund të shtoni edhe fusha të tjera nga databasei
i zgjedhur po me të
njëjtë metode në formën më sipër. P.sh. ju mund të shtoni aty adresën,
qytetin, apo numrin e telefonit për t’i kontrolluar nga data kontrolleri
ynë.
Pasi të keni shtuar text boxet që p¨rmendëm më sipër, forma jonë pas
ekzekutimit të programit do të ishte si më poshtë.
MSc. Genci Berati Principe të Visual Basic 6.0
103
Kapitulli 20: Krijimi I një aplikacioni me bazë të dhënash në VBPjesa
e
dytë
Në kapitullin 19, ne mësuam si të krijojmë një aplikacion database të
thjeshtë duke përdorur data controller (data control). Në këtë kapitull
do të përdorim të njëjtin aplikacion, por do të përdorim disa komanda
të tjera shtesë. Data kontrolleri përmban disa metoda të cilat mund të
përdoren për të manipuluar databasein,
p.sh. për të levizut puntatorin
në një lokalizim të caktuar. Më poshtë janë disa komanda të cilat ju
mund t’i përdorni për të lëvizur puntatorin.
data_navigator.RecordSet.MoveFirst ' Lëviz në rekordin e parë
data_navigator.RecordSet.MoveLast ' Lëviz në rekordin e fundit
data_navigator.RecordSet.MoveNext ' Lëviz në rekordin tjetër
data_navigator.RecordSet.Previous ' Lëviz në rekordin
paraardhës
*shënim: data_navigator është emir i data kontrollerit.
Në shembullin më poshtë ne dot ë përdorim katër komanda dhe do t’i
etiketojmë si Rekodi i parë, Rekodri tjetër, Rekordi paraardhës, Rekordi
i fundit. Këta komandë butona do të përdoren për të naviguar në
databasin
tonë pa përdorur 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 ndërfaqjen si më poshtë.
Në të ju do të mund të navigoni databasin përkatë duke përdorur
butonat e kontrollit.
MSc. Genci Berati Principe të Visual Basic 6.0
104
MSc. Genci Berati Principe të Visual Basic 6.0
105
Kapitulli 21: Krijimi i një aplikacioni database në VB duke përdorur
ADO kontrollin.
Në kapitujt 19 dh 20 ne kemi mësuar sit ë krijojmë aplikime me database
në Visual Basic duke përdorur data kontrollerin. Megjithatë data
kontrolleri (Data control) nuk është në të vërtetë një mjet shumë
fleksibël. Ai mund të punojë vetëm me disa lloje të dhënash dhe duhet
të punojë në mjedis strict Visual Basicu.
Për të eleminuar këtë limit ju
mund të përdorni një data kontrolle më të fuqishëm 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ë ndryshëm) dhe gjuhë të ndryshme programimi.
Për më tepër ADO kontrolleri mund të pranojë lloje të ndryshme të
dhënsh si p.sh. të dhënat e paraqitura në browserat e internetit, tekst
nga emailet,
biles edhe imazhe grafikë, përveç informacineve
relacionale dhe jo relacionale të databaseeve.
Për të përdorur ADO data kontrollerin
ju duhet ta paraqitni atë më
parë në toolbox (kutine e instrumenteve). Për të bërë këtë, thjeshtë
shtypni Ctrl+T për të hapur kutinë e komponenteve dhe zgjidhni
Microsoft ActiveX Data Control 6. Pas kësaj ju mund të proçedoni
ndërtimin e aplikimit të bazuar në ADO kontroller për database.
Shëmbulli i mëposhtëm ilustron më së miri se si mund të ndërtoni një
aplikacion relativisht të fuqishëm duke përdorur ADO data kontroller.
Para së gjithash emërtoni formën tuaj frmTitullLibri dhe ndryshoni
caption për këtë formë në Titulli i Librit – aplikim ADO. Së dyti fut në
formë ADO data kontrollerin dhe emërtojeni atë si adoLibra dhe
ndrysho caption për ketë ADO kontroller në libër. Pastaj fut në formë
etiketat e duhura (labels), kutitë e teksteve (text box) dhe butonat e
komandave (commands buttons). Ndërfaqja mbas ekzekutimit (run
time interface) për këtë 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 nëpër rekordet e databasiit.
MSc. Genci Berati Principe të Visual Basic 6.0
106
Zgjedhjet (properties) për të gjitha kontrollerat e përdorura në
aplikacionin më sipër janë si më poshtë:
Form Name frmTitullLibri
Form Caption Tutujt e Librave –ADOApplication
ADO Name adoLibrat
Label1 Name lblApp
Label1 Caption Book Titles
Label 2 Name lblTitle
Label2 Caption Title :
Label3 Name lblYear
Label3 Caption Year Published:
Label4 Name lblISBN
Label4 Caption ISBN:
Labe5 Name lblPubID
Label5 Caption Publisher's ID:
Label6 Name lblSubject
Label6 Caption Subject :
TextBox1 Name Txtitle
TextBox1 DataField Title
MSc. Genci Berati Principe të Visual Basic 6.0
107
TextBox1
DataSource adoBooks
TextBox2 Name txtPub
TextBox2 DataField Year Published
TextBox2
DataSource adoBooks
TextBox3 Name txtISBN
TextBox3 DataField ISBN
TextBox3
DataSource adoBooks
TextBox4 Name txtPubID
TextBox4 DataField PubID
TextBox4
DataSource adoBooks
TextBox5 Name txtSubject
TextBox5 DataField Subject
TextBox5
DataSource adoBooks
Command Button1
Name cmdSave
Command Button1
Caption &Save
Command Button2
Name cmdAdd
Command Button2
Caption &Add
Command Button3
Name cmdDelete
Command Button3
Caption &Delete
Command Button4
Name cmdCancel
Command Button4
Caption &Cancel
Command Button5
Name cmdPrev
Command Button5 &<
MSc. Genci Berati Principe të Visual Basic 6.0
108
Caption
Command Button6
Name cmdNext
Command Button6
Caption &>
Command Button7
Name cmdExit
Command Button7
Caption E&xit
Në mënyrë që të mund të futemi dhe të manaxhojmë në data base, ju
duhet të lidhni ADO kontrollerin me një skedarë database. Siç kemi
thënë edhe më parë ne do të prdorim skedarin BIBLIO.MDB i cili
instalohet bashkë me programin Visual Basic. Për të realizuar lidhjen
duhet të ndiqen këro hapa:
a) Kliko mbi ADO kontroll në form dhe hapni dritaren e zgjedhjeve
(properties window)
b) Klikoni në propertinë ConnectionString, do t’ju shfaqet kutia e
dialogut si më poshtë.
MSc. Genci Berati Principe të Visual Basic 6.0
109
pasi kutia e dialogut të shfaqet ju do të përdorni opsionet e Connection
String. Më pas kliko Build dhe në kutinë e dialogut Data Link, bëni
dopioklik opsionin e emërtuar Microsoft Jet 3.51 OLE DB Provider.
Më pas kliko në butonin Next për të zgjedhur skedarin BIBLO.MDB. Ju
mund të klikoni ne Text Conection për tu siguruar për lidhjen e skedarit
database BIBLIO.MDB. Kliko OK për të përfunduar lidhjen .
Më pas klikoni në propertinë RecordSource dhe zgjidhni propertinë
Command Type adCmdTable dhe emrin e tabelës (table name) Titles.
Tani besoj se mund të prdorni skedarin e databaseit
ne aplikacionin
tuaj.
MSc. Genci Berati Principe të Visual Basic 6.0
110
Tani ju duhet të shkruani kod për të gjitha butonat e komandave. Mbasi
të keni realizuar gjithë veprimet më sipër ju mund ta bëni ADO
kontrollerin të padukshëm në kohen e ekzekutimit (në run time).
Për 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
Për butonin Shto Kodet e programit janë i më poshtë:
Private Sub cmdShto_Click()
adoBooks.Recordset.AddNew
End Sub
Për butonin Fshij Kodet e programit janë i më poshtë:
Private Sub cmdFshij_Click()
Confirm = MsgBox("Are you sure you want to delete this record?",
MSc. Genci Berati Principe të Visual Basic 6.0
111
vbYesNo, "Deletion Confirmation")
If Confirm = vbYes Then
adoBooks.Recordset.Delete
MsgBox "Record Deleted!", , "Message"
Else
MsgBox "Record Not Deleted!", , "Message"
End If
End Sub
¡¡
Për 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
Për 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
Për 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
MSc. Genci Berati Principe të Visual Basic 6.0
112
Kapitulli 22: Krijimi i një aplikacioni më të avancuar database në VB
duke përdorur ADO kontrollin.
Në kapitujt më parë ju mësuat se si të krijoni një aplikacion duke
përdorur data kontrollin e thjeshtë (data control) dhe kontrolerin ADO.
Megjithatë ato ishin aplikacione shume të thjeshtë dhe principalë. Në
këtë kapitull do të mësojmë se si të krijojmë një aplikacion pak më
kompleks, gjithnjë duke përdorur kontrollerin ADO. Apliacioni që do të
krijojmë do ta quajmë Librari Elektronike. Kjo librari elektronike do të
ketë opsionin e regjistrimit të përdoruesve të aplikacionit dhe do të
lejojë perdorimin e aplikacionit vetëm përdoruesit e rregjistruar.
Përdoruesit e rregjistruar do të zbatijnë procedurën e logimit që do të
kërkojë emrin e përdoruesit dhe një password, kështu që ky apliacion
do të kënaq kushtet e aspektit të sigurisë të databaseit.
Aplikacioni që
po ndërtojmë konsiston në një menu mirëseardhje, një menu
rregjistrimi, një menu hyrjeje (logimi) dhe menunë kryesore të
administrimit të databasit. Rradha e këtyre menuve paraqitet me skemë
si më poshtë.
Miredita
Perdoruesit e
regjistrohu rregjistruar
Hyr (Logo)
Database
MSc. Genci Berati Principe të Visual Basic 6.0
113
Para së gjithash ju duhet të ndërtoni menunë e mirëseardhjes. Ju mund
të ndiqni shembullin si më poshtë
Në këtë form ju duhet të fusni tre butona komadne dhe të zgjidhni
propertitë e tyre si më poshtë:
Form name main_menu
command button 1 Name cmdRegister
command button 1 Caption Register
command button 2 Name cmdLogin
command button 2 Caption Login
command button 3 Name cmdCancel
command button 3 Caption 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
MSc. Genci Berati Principe të Visual Basic 6.0
114
Private Sub cmdRegister_Click()
main_menu.Hide
Register.Show
End Sub
Në qoftë se përdoruesi shtyp butonin Rregjistrohu, do të shfaqet forma
e regjistrimit, shëmbulli 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 Register
textbox 1 name txtName
textbox 2 name txtpassword
textbox 2 PasswordChar *
command button 1 name cmdConfirm
command button 1 Caption Confirm
command button 2 name cmdClear
command button 2 Caption Clear
MSc. Genci Berati Principe të Visual Basic 6.0
115
command button 3 name cmdCancel
command button 3 Caption Cancel
ADO control name UserInfo
Shënim: Në kutinë e tekstit të passwordit do të shfaqet vetëm shenja *
për secilin karakter të passwordit në mënyrë 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ë :
MSc. Genci Berati Principe të Visual Basic 6.0
116
Në këtë formë janë dy text box dhe një command button. Propertitë e
tyre janë si më poshtë :
Textbox 1 name txtName
Textbox 2 name txtpassword
Command button 1 name cmdLogin
Command button 1
Caption
Login
Form name 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
MSc. Genci Berati Principe të Visual Basic 6.0
117
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ë:
MSc. Genci Berati Principe të Visual Basic 6.0
118
Propertite
për të gjitha kontrollet e përdorur në ketë formë janë
paraqitur në tablën më poshtë:
Form name frmLibrary
ADO control name adoLibrary
ADO visible False
TextBox 1 name txtTitleA
TextBox 2 name txtAuthor
TextBox 3name txtPublisher
TextBox 4 name txtYear
TextBox 5 name txtCategory
Command button 1 name cmdSave
Command button 1 caption &Save
Command button 2 name cmdNew
Command button 2 caption &New
MSc. Genci Berati Principe të Visual Basic 6.0
119
Command button 3 name cmdDelete
Command button 3 caption &Delete
Command button 4 name cmdCancel
Command button 4 caption &Cancel
Command button 5 name cmdNext
Command button 5 caption N&ext
Command button 6 name cmdPrevious
Command button 6 caption &Previous
Command button 7 name cmdExit
Command button 7 caption E&xit
Kodet janë si më poshtë:
Private Sub cmdCancel_Click()
txtTitle.Text = ""
txtAuthor.Text = ""
txtPublisher.Text = ""
txtYear.Text = ""
txtCategory.Text = ""
End Sub
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()
MSc. Genci Berati Principe të Visual Basic 6.0
120
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
Private Sub cmdSave_Click()
adoLibrary.Recordset.Fields("Title").Value = txtTitle.Text
adoLibrary.Recordset.Fields("Author").Value = txtAuthor.Text
adoLibrary.Recordset.Update
End Sub 

Make a Free Website with Yola.