Visual basic

Visual Basic
Botimi i parё
Gjergji Shaska
Electrical and Computer Engineering
Oakland University
 Page 3 of 239
 
Mirёserdhёt nё kёtё botim tё gjuhёs sё programimit nё Visual Basic. Ky
tekst ёshtё shkruar jo vetёm pёr fillestarёt qё po futen nё botёn e madhe tё
programimit, por gjithashtu dhe pёr nivelet mё tё avancuara. Ky gёrshetim
ёshtё mundёsuar nga mёnyra e dhёnies sё aplikimeve, ku shpesh
programet analizohen nё detaje. Gjithashtu disa kapituj si: Databases apo
Web Applications, janё shkruajtur nё mёnyrё tё tillё qё tё pregatisin
lexusin pёr tё vazhduar me nivele mё tё avancuara. Ky libёr ёshtё i
mbushur me shembuj praktik nga jeta e pёrditshme, nё mёnyrё qё
studentёt jo vetёm tё mёsojnё tё programojnё nё Visual Basic, por
gjithashtu tё mёsojnё se ku ti pёrdorin kёto njohuri tё fituara gjatё studimit
tё kёtij libri.    
 “Politika ёshtё pёr momentin, shkenca ёshtё pёr pёrjetёsin”
Albert Einstein
Page 4 of 239
 
Pak Histori rreth Visual Basic
 Versioni i parё i Visual Basic u krijua nё vitin 1991. Arsyeja pse Visual
Basic u bё shumё shpejt njё prej gjuhёve mё tё pёrdorshme ёshtё se ai
shkurtoj nё mёnyrё tё jashtёzakonshme kodin pёr aplikime tё ndryshme.
Kjo bёri tё mundur qё pёr programusёt ai tё bёhej shumё i pёlqyer. Nёse
mё parё ata duhet tё shkruanin me qindra rreshta nё gjuhёn C pёr njё
programim fare tё thjeshtё, duke pёrdorur Visual Basic kjo arrihet vetёm
nё pak rreshta. 
Nё 2002 Microsoft krijoi njё platforёm tё re object-oriented software e
njohur si .NET. Disa prej tё rejave qё krijoi .NET nё teknologji janё:
krijimi i programeve bazё tё Internetit dhe shёrbimet nё Web. Me krijimin
e softwarit .NET nё 2002 Microsoft krijoi dhe njё version tё ri tё Visual
Basic i njojtur me emrin VB .NET 2002, Ky version i jepte mundёsi
programusit tё shkruante aplikime nё Web pёr platformёn .NET.
Megjithse VB .NET ishte njё program shumё i avancuar pёr kohёn, njё
dizavantazh i math ishte se programet e mёparshme tё shruara nё Visual
Basic nuk funksiononin. Duke parё kёtё mangёsi Microsoft u mundua tё
krijonte diçka qё mund tё realizohej ky kalim, por nuk pati sukses pasi
ndryshimet nё VB .NET ishin shumё thelbёsore. 
Nё 2003 Microsoft krijoi njё version tё ri me emrin VB .NET, por nuk pati
ndonjё pёrmirsim tё dukshёm me versionin e mёparshёm. Nё 2005 njё
tjetёr version krijohet nga Microsoft me emrin VB .NET 2005, i cili pati
shumё pёrmirёsime me versionet e mёparshme. Ky libёr ёshtё shkruar
pikёrisht me kёtё version, VB .NET 2005.     
Page 5 of 239
 Njё pёrshkrim i shkurtёr pёr çdo kapitull
 
Kapitulli 1: Hyrje nё programim dhe Visual Basic
Nё kёtё kapitull jepet njё hyrje dhe disa nga konceptet bazё qё
nevoiten, pёr tё qenё njё programus i mirё jo vetёm nё Visual Basic
por dhe nё programet e tjerё. Ky kapitull ёshtё menduar qё tё
ndimojё dhe ata tё cilёt nuk kanё ndonjё eksperiencё tё mёparshme
me programimin.   
Kapitulli 2: Krijimi i aplikimeve
Ju nё kёtё kapitull do tё krijoni aplikimin tuaj tё parё nё Visual
Basic. Nё kёtё aplikim ju do tё shfaqni imazhe grafike nё forёm, do
tё pёrdorni kontrollet dhe do tё modifikoni vlerat e tyre.   
Kapitulli 3: Variablat
Variablat, constants dhe data types nё Visual Basic janё shpjeguar nё
kёtё kapitull. Krijimi i variablave, mёnyrat e ndryshme tё deklarimit
tё tyre, si dhe manipulimi i tyre do tё jenё disa nga konceptet
kryesore tё kёtij kapitulli. 
Kapitulli 4: Fjalitё e kushtёzuara
Ky kapitull pёrqёndrohet nё shpjegimin e fjalive tё kushtёzuara. Ju
do tё mёsoni nё kёtё kapitull marrdhёniet ndёrmjet operatorёve dhe
si tё kontrolloni rrjedhёn e programit duke pёrdorur fjalitё e
kushtёzuara If . . . Then, If . . . Else dhe If . . . Then . . . Else. Nё
vazhdim janё shpjeguar operatorёt logjikё dhe fjalitё Select Case.   
Kapitulli 5: Fjalitё loop
Nё kёtё kapitull lexusi do tё gjejё fjalitё qё pёrsёriten pёr aq kohё sa
kushti qёndron i vёrtetё. Njё shpjegim nё detaje pёr Do While, Do
Until dhe For . . . Next loop do tё gjendet nё kёtё kapitull. Fjalitё
loop shumё shpesh mund tё mёnjanohon nga pёrdorimi, por
pёrdorimi i tyre lehtёson shumё punёn e programusit, kёshtu qё ato
jo vetёm nё Visual Basic por nё tё gjitha gjuhёt e programimit janё
shumё tё pёrdorshme.  
Kapitulli 6: Arrays Page 6 of 239
 
Ky kapitull diskuton si arrays me njё dimension ashtu dhe arrays me
shumё dimensione. Shumё teknika programimi duke pёrdorur arrays
janё dhёnё nё kёtё kapitull siç janё shuma e tё gjithё elementёve tё
array, shuma e rreshtave ose kollonave nё arrays me dy dimensione,
kёrkimi i njё vlere nё njё array dhe vendosja nё rendin rritёs e
elementёve tё array.    
Kapitulli 7: Menus
Nё kёtё kapitull shpjegohen menut tё cilat ne tё gjithё i pёrdorim
gjatё gjithё kohёs qё pёrdorim kompiuterin. Ne do tё mёsojmё si tё
shtojmё kёto menu nё forёm, tё cilat janё shumё tё pёrdorshme jo
vetёm gjatё programimit, por edhe pёr vetё Visual Basic, pёr
shembull File, Edit, View, Project, Help etj.
Kapitulli 8: Databases
Ky kapitull shpjegon konceptet bazё nё database ku ju do tё mёsoni
si tё shfaqni njё tabel database nё njё DataGridView dhe tё shkruani
aplikime. Nё kёtё kapitull do tё mёsoni si ti shfaqni vlerat e database
nё list boxes, text boxes, labels dhe combo boxes. 
  Appendix I: Logical Operators
Nё kёtё kapitull tregohen disa nga operatorёt mё kryesor bazuar nё
boolean algebra. 
Appendix II: ASCII Kod
Ky kapitull do tё shpjegoj ASCII Kod i cili pёrcakon karakteret bazuar nё
alfabetin Anglisht. Ai prezanton tekstin nё kompjuter, paisjet e komunikimit
dhe paisjeve tё tjera qё punojnё me text. Karakteret ASCII pёrdoren nё ditёt
e sotme nё tё gjithё kompiuterat.
 
 
 
 
 
 Page 7 of 239
 
Pёrmbajtja
 
Kapitulli 1 Hyrje nё programim dhe VB
1.1 Sistemi i komjuterit              10
1.2 Kontrolli nё VB              17
1.3 Proçesi i programimit            18
1.4 Krijimi i programimit nё VB           21
Kapitulli 2 Krijimi i Aplikimeve
2.1 Krijimi i aplikimit drejtimi          30
2.2 Kodi pёr aplikimin drejtimi          38
2.3 Kodi pёr imazhet              47
Kapitulli 3 Variablat
3.1 Krijimi i variablave             50
3.2 Variablat string              55
3.3 Vlerat primitive              59
3.4 Projekti kalkulatori            64
3.5 Llogaritja e çmimit pёr njё dhomё hoteli        68
Kapitulli 4 Fjalitё e kushtёzuara
4.1 Fjalia if                80
4.2 Krahasimi dhe testimi i string          91
4.3 Fjalitё Case              99
4.4 Radio Buttons dhe Check Boxes                  102
4.5 Variablat class-level          104
4.6 Projekti anёtarёt e palestrёs                   105
Kapitulli 5 Fjalitё Loop
5.1 Fjalitё Do While Loop                      113
5.2 For . . . Next Loop                      118
5.3 Nestet Loop                       122
5.4 Input Boxes dhe List Boxes         123
5.5 Projekti kredia pёr veturёn           131
 Page 8 of 239
 
Kapitulli 6 Arrays
6.1 Array me njё dimension                     143
6.2 Arrays shumdimensionale                   151
6.3 Random numbers            154
6.4 Sub procedures dhe funksionet me arrays     154
Kapitulli 7 Menus
7.1 Open menu             167
7.2 Save menu             175
7.3 Copy, Paste, Cut, Undo mesus        177
7.4 View TextBox menu          179
7.5 View Images menu          180
7.6 Manipulimi i string          184
7.7 Projekti axhensi turistike          186
Kapitulli 8 Databases
8.1 Ç’farё ёshtё njё database          201
8.2 Krijimi i database nё VB          203
8.3 Structured Query Language        213
Appendix I Hyrje nё programim dhe VB    215
Appendix II Hyrje nё programim dhe VB    217
 
  Page 9 of 239
 
 
KAPITULLI 1
 
HYRJE NË PROGRAMIM DHE VISUAL BASIC
 
Microsoft Visual Basic ёshtё njё software i cili pёrdoret pёr krijimin e aplikimeve
nё Windows. Visual Basic ёshtё zhvilluar nga BASIC, i cili ёshtё krijuar nga
Profesorёt John Kemeny dhe Thomas Kurts nё mesin e viteve 1960. Qё atёherё
shumё versione tё BASIC janё zhvilluar nё GWBASIC, IBM BASICA, Apple
BASIC etj. Apple BASIC ёshtё zhvilluar nga Steve Wozniak, njё ish punonjёs i
Hewlett-Packard dhe njё shok i ngushtё me Steve Jobs, tё cilёt sё bashku nё 1
Prill tё 1976 formuan Apple Computer Company.   
Me Visual Basic ne mund tё krijojmё aplikime me grafikё windows, dialog boxes,
menus dhe tё krijojmё aplikime qё punojnё me data bases. Visual Basic ёshtё njё
gjuhё e pёlqyer nga programusit sepse ajo tё krijon mundёsinё qё nё njё kohё tё
shkurtёr tё krijosh aplikime tё rёndёsishme nga jeta e pёrditshme. Visual Basic
njihet si njё gjuhё relativisht e thjeshtё pёr tu kuptuar nga njerёzit, pasi ajo ёshtё
njё high level language. Fillimishtё ne do tё shpjegojmё disa njohuri bazё tё
hardware dhe software dhe pastaj do tё shpjegojmё se si aplikimet Visual Basic
janё tё organizuara.
 
1.1  SISTEMI I KOMPIUTERIT
 
Ne po e fillojmё shpjegimin e njё sistem kompiuteri me disa terminologji
thelbёsore dhe duke treguar se si sistemi i kompiuterit ndёrlidhet.Njё system
kompiuteri ёshtё i ndёrtuar nga hardware dhe software. Janё kёto dy komponentё
qё bashkёpunojne me njёri-tjetrin qё na lejojnё ne tё pёrdorim kompiuterin.
 
1.1.1  Hardware
Hardware ёshtё njё komponent fizikё i sistemit tё kompiuterit. Ai pёrfshin chips, telat,
keyboards, disks, kabllat, printers, monitors dhe shumё paisje tё tjera si kёto. Ideja ёshtё Page 10 of 239
 
qё nёse ne mund ta prekim fizikishtё dhe ёshtё pjesё e njё sistemi kompiuteri, atёherё ai
ёshtё hardware.
Por njё hardwrare nuk mund tё kryejё asnjё funksion pa disa urdhёra qё i tregojn atij se
çfarё duhet tё bёjё. Njё program ёshtё njё seri urdhёrash qё hardwari duhet tё ndjeki njёri
pas tjetrit. Njё program ёshtё ruajtur nё memorien e kompiuterit nё formёn e njё numri
binary qё quhet machine instructions. Sё bashku hardwari dhe software na japin ne
mundёsin tё zgjidhim probleme tё ndryshme nga mё tё thjeshtёt deri te mё tё
komplikuarit. 
Nё njё sistem kompiuteri pёrbёrёsit kryesorё tё hardwarit janё:
1.  Central processing unit (CPU)
2.  Input/Output (I/O) 
3.  Main memory
4.  Secondary memory device
Central processing unit (CPU) zbaton tё gjitha komandat nё njё program. Input/Output
(I/O) si pёr shembull keybord, mouse, or monitor na lejon ne si pёrdorus tё pёrdorim njё
kompiuter. Tё gjitha programet dhe data janё mbajtur nё njё device tё quajtur memory e
cila ndahet nё dy kategori: main memory dhe second memory. Gjatё kohёs qё CPU
thёrret njё program, main memory thёrret kёtё program nga hard disku dhe ky program
qёndron nё main memory pёr aq kohё sa ky program ёshtё nё pёrdorim. Secondary
memory device ёshtё vendi ku ruhen softwaret. Mё i rёndёsishmi ёshtё hard disku ku
ruhen tё gjitha programet e njё kompiuteri. Floppy disk ёshtё i ngjashёm me hard diskun
vetёm se ruan shumё mё pak informacione. Por floppy disk ka avantazhin se mund tё
lёvizet nga kompiuteri nё kompiuter sipas nevojёs.
Fig. 1.1 tregon se si informacioni lёviz pёrgjatё komponentave kryesorё nё hardware. Le
ta ilustrojmё kёtё me njё shembull. Supozojmё se ne duam tё thёrrasim njё program. Si
thamё dhe mё lartё ky program ёshtё i ruajtur nё hard disk. Kur ne i kёrkojmё
kompiuterit tё thёrrasi kёtё program, njё kopje e kёtij programi ёshtё sjellё nga hard
disku nё main memory. Nё kёtё moment CPU lexon urdhёrat nga main memory dhe i
zbaton ato njёra pas tjetrёs derisa vjen nё fundё tё programit. Gjatё kёtijё proçesi
programi mundё tё paraqesi data edhe nё output si pёr shembull nё monitor. Ky proçese
ёshtё shumё i rёndёsishёm nё mbarёvajtjen e punёs nё njё kompiuter. 
 Page 11 of 239
 
• Hardware
Hardware
Main
memory CPU
Hard disk
Floppy disk
Keyboard
Monitor
.
Fig. 1.1 Njё version i thjeshtuar i njё sistem kompiuteri.
Central Processing Unit (CPU)
Computer architecture pёrshkruan se si pёrbёrёsit e kompiuterit janё vendosur sё bashku.
Nё Fig. 1.1 ёshtё paraqitur modeli i arkitekturёs sё njё kompiuteri. Duke pasur parasysh
dhe Fig. 1.1 (ne sugjerojmё ta rishikoni kёtё figurё) dy pёrbёrёsit mё kryesorё nё njё
kompiuter janё CPU dhe main memory. Si ne e shpjeguam dhe mё parё, main memory
ruan programet dhe data qё janё nё pёrdorim dhe CPU i zbaton urdhёrat e programit njёri
pas tjetrit deri sa shkon nё fund tё tijё.
 
Fig. 1.2 Modeli i arkitekturёs nё njё kompiuter.
Nё njё kompiuter tё gjitha lёvizjet janё te komanduara nga CPU i njojtur ndryshe si truri i
njё kompiuteri. CPU qё quhet gjithashtu processor ndahet nё dy pjesё tё mёdha: datapath
dhe control unit Fig. 1.3.  Page 12 of 239
 
Control Unit
Datapath
Arithmetic
Logic Unit
Registers
Processor
Common Bus (address, data, & control)
Memory
Program
Storage
Data
Storage
Output
Units
Input
Units
Figure 1.1 Computer Organization
 
Fig. 1.3 Organizimi i njё Kompiuteri.
Datapath konsiston nё register file dhe nё arithmetic logic unit (ALU). Register file
konsiston nё njё ose mё shumё registra, tё cilat kanё njё pozicion nё CPU. Register file e
bёn programin tё punojё me mё shumё efikasitet dhe numri i register file ndryshon nga
kompiuteri nё kompiuter. Tё gjitha vepimet arithmetike dhe vlerёsimet kryhen nё ALU.
Kjo (ALU) merr data nga main memori and register file, kryen llogaritjet dhe nё se ёshtё
e nevojshme shkruan rezultatin mbrapa nё main memori ose registers. 
Control unit pёrmban urdhёrat logjike pёr hardware. Ai monitoron efikasitetin e kёtyre
urdhёrave dhe vepron si arbitёr nё shumё drejtime pёr burimet e CPU. Program couter
(PC) ёshtё njё regjistёr qё ka control unit, e cila kontrollon adresёn nё memorie pёr atё qё
do tё ndodh mё vonё. Nё se do ta pёrkufizonim nё njё mёnyrё mё tё thjesht do tё thoshim
se PC shikon se çfarё do tё ndodh nё hapin tjetёr.  
Input/output Devices 
Input janё data tё ardhura nё njё sistem dhe output janё data qё dёrgohen nga sistemi.
Input devices mё tё pёrdorshme janё keyboard dhe mouse. Disa input devices mё pakё tё
pёrdorshme janё: microfonat tё cilёt pёrdoren nga sisteme qё interpretojnё komanda zёri
tё thjeshta, scanners qё konvertojnё tekstin, fotografitё, apo grafikёt nё formёn e
lexushme nga makina. Pёr output devices mё tё pёrdorshme pёrmendim monitorat dhe
printerat. Disa devices i ofrojnё tё dyja mundёsitё input dhe output si p.sh. modems or
network cards. Gjithashtu CPU dhe main memory mund tё konsiderohen si I/O devices
pasi ato transferojnё data nё tё dy drejtimet brenda dhe jashtё. Input/output dhe secondary
memory devices janё konsideruar peripherials sepse ato operojnё nё anёt e sistemit.
Secondary memory dhe data transfer devices janё konsideruar gjithashtu si I/O devices
sepse ato prezantojnё njё burim informacioni si input dhe dёrgojnё informacionin si
output.   Page 13 of 239
 
Main memory and Second Memory 
Memory ёshtё vendi ku software dhe data ruhen. Njё kompiuter mund tё pёrmbajё
semiconductor, magnetic dhe optical memory. Ne do tё diskutojmё vetёm  semiconductor
memory tё cilat mund tё klasifikohen nё dy tipe: random acces memory (RAM) dhe read-
only memory (ROM). RAM e cila ёshtё mё e njojtur pёr ne me kёtё emёr nё tё vёrtetё
ёshtё main memory. Main memory i referohet njё memorie fizike qё ёshtё brenda nё
kompiuter, i cili mund tё manipulojё data qё ndodhen nё main memory. Madhёsia e main
memory ёshtё shumё e rёndёsishme sepse ajo pёrcakton sa programe mund tё punojnё nё
tё njёjtёn kohё dhe sa data tё lexushme mund tё jenё tё gatshme nё njё program. Secili
pozicion nё memorie ka njё dhe vetёm njё binary numёr qё quhet address. Kjo ide mund
tё konceptohet e njёjtё me adresat qё ne kemi nё shtёpitё tona, ku secila shtёpi ka njё dhe
vetёm njё adresё. Nё kёtё mёnyrё bёhet e mundur qё postieri tё identifikojё se ku duhet
tё adresojё çdo informacion postar. Mbajeni nё mendje kёtё ide, pasi informcioni nё
kompiuter lёviz nё mёnyrё tё ngjashme dhe nё çdo moment duke ju referuar adresave se
ku duhet tё ruaj informacionin.  
1.1.2  Software
Pёrpara se ne tё fillojmё tё programojmё ne duhet pikё sё pari tё kuptojmё disa koncepte
bazё tё programimit. Njё kompiuter ёshtё njё listё e organizur tё dhёnash, tё cilat kur
ekzekutohen bёjnё qё kompiuteri tё punojё nё njё mёnyrё tё paracaktuar. Programimi
nёnkupton krijimin e urdhёrave pёr kompiuterin pёr tё kryer njё punё tё cilёn njerёzit do
tё shpenzonin njё kohё shumё tё gjatё.   
Zakonisht njerёzit mendojnё se kompiuterat CPU (Central Procesing Units) janё shumё
inteligjentё, nё tё vёrtetё ata kuptojnё vetёm kombinimin e dy numrave: 0 dhe 1. Kёtё
gjuhё ne e quajmё machine language, e cila ёshtё shumё e vёshtirё pёr tu mёsuar dhe
quhet primitive language. Fatmirёsisht ne kemi programus shumё tё zotё tё cilёt
shkruajnё programe tё cilёt perkёthejnё gjuhёn e njerёzve nё gjuhёn e kompiuterit. Kёto
gjuhё quhen high level language siç janё Fortrain, Visual Basic, Cobol, Java, C, C++,
VHDL dhe shumё e shumё gjuhё tё tjera. 
Fortran pёrdoret pёr pёrkthime formulash, zakonisht nё aplikime nё shkenca dhe
inxhinjeri dhe ёshtё krijuar nga IBM nё vitin 1954. COBOL pёrdoret nё fushёn e
biznesit, i cili u krijua nga njё grup kompiuterikёsh nё industri nё 1959. C ёshtё krijuar
nga Dennis Richie nё 1972 dhe u pёrdor nё zhvillimin e sistemit operator UNIX. C++
ёshtё njё program mё i zgjeruar se C, i cili u krijua nga Bjarne Stroustrup nё 1980. JAVA
ёshtё njё program relativisht i ri, por njё prej mё tё pёrdorurve nё ditёt e sotme. Ai u
krijua nga Sun Mcrosystems nё 1995, i cili ёshtё njё zgjerim i C++ duke pёrfshirё
librarinё pёr disa media, networking, grafikё, aksesё nё databas, programim nё GUI.
Microsofti krijoi versionin e tij nё Java, i cili quhet Visual J++.    Page 14 of 239
 
Software mund tё klasifikohetn nё shumё kategori por ne tani po pёrqёndrohemi vetёm
tek system programs dhe application programs. Operating systems or OS janё disa
programe tё cilat menaxhojnё njё kompiuter. Ai i lejon pёrdoruesit tё komunikojё me njё
kompiuter dhe menaxhon atё. Gjithashtu ai pёrcakton kur programet janё tё lejuara tё
thёrriten, kur ato janё nё main memory, dhe si hardware komunikon. Kjo ёshtё puna e
operating systems; tё bёjё punёn e kompiuterit mё tё lehtё dhe tё sigurojё qё ёshtё duke
punuar me efiçencё.
Sot nё pёrdorim janё disa operating systems por mё tё pёrdorshmit janё Windows 2000,
Windows XP dhe Vista qё janё versione tё Microsoft. Disa versione tё Unix operating
systems janё gjithashtu shumё popullor, sidomos nё kompiutera shumё tё mёdhenj.
Linux ёshtё njё version i Unix qё ёshtё njё open source qё nёnkupton qё shumё njerёz
kanё kontribuar pёr tё dhe kodi i tij afrohet pёr kёdo falas. Kjo ёshtё njё nga arsyet qё
Linux po bёhet gjithmonё dhe mё shumё njё favorit i fortё. Njё tjetёr operating system is
Mac OS qё ёshtё i pёrdorur nga Apple kompiuters. 
Njё aplikation ёshtё njё tёrmё qё pёrdoret jo vetёm pёr operating system por pёr çdo
software. Application software janё programet tё cilat e bёjnё kompiuterin mё tё
pёrdorshёm pёr pёrdoruesin. Database managers, Web browsers, lojrat dhe shumё tё tjera
mund tё konsiderohen application programs. 
Graphical user interface (GUI) ёshtё njё prej sistemeve pёr shumicёn e operating
systems. Graphical user interface (GUI) na jep mundёsine ne tё krijojmё paraqitje grafike
tё ndryshme nё ekran. Disa nga kёto elemente janё. 
1.  Windowns, qё pёrdoret tё ndajё ekranin ne hapёsira tё ndryshme.
2.  Icons, qё janё imazhe tё vogla qё paraqesin burimet e kompiuterit, si p.sh. njё file.
3.  Pull-down menus, qё i jep mundёsinё pёrdorusit tё zgjethё nga njё listё me
opsione.
4.  Buttons, qё mund tё klikosh me njё mouse pёr tё treguar njё zgjedhje tё
perdorusit.
Nё disa pjesё tё veçanta tё kёtij libri janё tё kёrkuara disa njohuri bazё si, digital
computers apo binary numbers. Ne po japim shkurtimisht idenё e kёtyre dy koncepteve
por nuk po futemi nё detaje, pasi ato  konsiderohen koncepte jashtё qёllimit tё kёtij libri. 
Gjenden dy teknika bazё pёr tё ruajtur dhe menaxhuar data nё njё kompiuter: analog dhe
digital. Analog ёshtё njё informacion i cili ёshtё i vazhdushёm ose i thёnё nё fjalё tё tjera
pёr çdo kohё (t) ne jemi nё gjendje tё pёrcaktojmё amplitudёn. Digital ёshtё ai proçes i
cili e copёton informacionin nё pjesё. E thёnё ndryshe gjendet njё numёr i fundёm time
(t) pёr tё cilin ne mund tё pёrcaktojmё amplitudёn.  Digital computers ruajnё Page 15 of 239
 
informacionin duke e copёtuar atё nё pjesё dhe duke e paraqitur çdo pjesё si njё numёr.
Por tё gjitha informacionet nё njё kompiuter janё tё ruajtura dhe menaxhuara nё binary
value dhe jo nё decimal value. Binary numbers kanё vetёm dy digit tё cilat janё 0 dhe 1.    
Çdo informcion ka dy komponentё tё cilёt janё adresa dhe pёrmbajtja. CPU komunikon
me memorien  pikё sё pari duke identifikuar pozicionin e adresёs dhe pastaj e kalon kёtё
adresё nё address bus. Kjo ide ёshtё e ngjashme me postierin e postёs i cili qё tё
shpёrndajё njё letёr mё parё ka nevojё pёr adresёn se ku do ta çojё kёtё letёr. Kjo ide e
transferimit tё data nёpёrmjet memory dhe CPU duke pёrdorur data bus ёshtё ilustruar
dhe nё Fig. 1.4. 
C P U
Ad d r e s s  b u s  l i n e s
D a ta  b u s  l in e s
M em o r y
Fi gu r e  1 .6  Tr an s f e r r i n g  d ata  b e twe e n  C P U  an d  m em o r y
 
Fig. 1.4 Transferimi i data ndёrmjet CPU dhe memory.
Madhёsia e memories matet nё bytes , njё byte pёrmban 8 bits. Njё madhёsi 4-bit quhet
nibble, njё 16-bit quhet a word. Siç e kemi pёrmendur dhe mё lartё kompiuteri ёshtё njё
paisje qё pёrdor numra binary pra vetёm 0 dhe 1 kёshtu qё tё gjitha adresat e ruajtura do
tё jenё nё fuqi tё dytё. Duke qёnё se kёto numra janё shumё tё mёdhenj pёr tё thjeshtur
madhёsinё e matjes sё memories ёshtё pёrdorur njёsia kilobyte (kB), e cila ёshtё e dhёnё
nga formula:
1024 210
= = k 
Njё njёsi tjetёr e pёrdorshme ёshtё megabyte (MB), qё jepet nga formula:
1048576 1024 1024 220 2
= × = = = k M 
Njesia  Simboli  Numri I bytes
  kilobyte     KB    2^0 = 1
 
Megabyte     MB    2^10 = 1024
   gigabyte     GB    2^20 = 1048576
   terabyte     TB    2^40 = 1099511627776
Fig. 1.5 Njёsitё nё binary. Page 16 of 239
 
Nё Fig. 1.5 paraqiten njёsitё nё binary tё cilat janё mё lehtё tё mbahen mend duke i
rrumbullakosur vlerat. Pёr shembull kilobyte ёshtё mё lehtё ta rrumullakosim nё 1000
byte, ose megabyte nё 100000 byte. Shumё kompiutera personal kanё 512 megabytes
main memory ose RAM. Njё main memory e madhe lejon programe tё mёdhaja nё
pёrdorim apo shumё programe nё pёrdorim. Random access Memory (RAM) i lejon
procesorit tё lexojё dhe tё shkruajё nё çdo pozicion tё memories nё chip. RAM ёshtё
volatile qё do tё thotё qё nёse korenti do tё shkёputet atёherё informacioni qё ndodhet nё
tё do tё humbasё. Prandaj ёshtё e rekomanduar qё gjatё punёs ne ta ruajmё shpesh punёn
qё ne jemi duke bёrё nё mёnyrё qё informacioni tё ruhet nё secondary device siç ёshtё
hard disku. Secondary memory device janё nonvolatile qё do tё thotё nёse korrenti
shkёputet informacioni ruhet nё tё. Mё tё pёrdorshmet secondary device qё ruajnё data
janё hard disku dhe flopy disk.
 
1.2  KONTROLLI NË VISUAL BASIC
 
Njё programus nё Visual Basic duhet tё dizenjoj dhe krijoj dy komponent nё njё
aplikim: elementёt GUI dhe fjalitё e programimit. Kur njё programus krijon njё
aplikim Visual Basic ai duhet tё pёrqёndrohet nё tre koncepte bazё: krijon
elementёt GUI tё cilёt bёjnё ndёrlidhjen ndёrmjet pёrdorusit dhe komponentёve,
vendos property pёr elementёve GUI dhe sё fundmi shkruan kodin e programit. 
1.2.1  Kontrolli i elementёve
Visual Basic ka disa kontrolle pёr tё kapur input, pёr tё shfaqur informacione, pёr tё
zgjedhur vlera, pёr tё shfaqur grafik etj. Ne po numёrojmё nё vazhdim disa prej
kontrolleve mё tё pёrdorshёm, pёr tё cilat nёse ju keni pak eksperiencё me Windows nuk
duhet tё keni problem. 
CheckBox: Njё box qё ёshtё checked ose unchecked kur klikohet me mouse. 
ComboBox: Njё kontroll qё ёshtё kombinimi i ListBox dhe TexBox. 
Button: Njё buton nё formёn e njё drejtёkёndёshi i cili kryen njё veprim kur klikohet me
mouse.
Label: Njё box qё shfaq tekstin i cili nuk mund tё ndryshohet nga pёrdorusi.
ListBox: Njё box qё pёrmban njё listё me objekte. 
TextBox: Njё hapёsirё nё formёn e drejtёkёndёshit nё tё cilёn pёrdorusi mund tё fusi
tekstin ose programi mund tё shfaqi tekstin. Page 17 of 239
 
RadioButton: Njё buton nё formёn e njё rrethi i cili ёshtё selected ose deselected kur
klikohet me mouse. 
PictureBox: Njё kontroll qё shfaq njё imazh grafik.
Form: Njё window nё tё cilёn kontrolle tё tjera mund tё shfaqen. 
GroupBox: Njё formё drejtёkёndёshe e cila pёrmban kontrolle tё tjerё. 
HScrollBar: Njё scroll bar horizontal i cili kur lёvizet me mouse rrit ose zvogёlon njё
vlerё. 
VScrollBar: Njё scroll bar vertikal i cili kur lёvizet me mouse rrit ose zvogёlon njё vlerё. 
1.2.2  Property i elementёve
Shfaqja e njё kontrolli pёrcaktohet nga property i elementёve. Shembulli mё i
pёrdorshёm ёshtё Name property ku pёrdorusi mund tё ndryshojё njё kontroll nё fjalinё
e njё programi duke ju referuar emrit tё kёtij kontrolli. 
Kur programusi krijon njё kontroll nё Visual Basic automatikisht ky kontroll merr njё
emёr tё cilin programusi mund ta ndryshojё duke e pёrshtatur me funksionin e kontrollit.
Pёr shembull nёse do tё krijonim disa label, e para do tё merrte emrin label1, e dyta
label2, e treta label3 dhe kёshtu me radhё pёr tё gjitha tё krijuarat. Siç thamё dhe mё
sipёr secilёs prej tyre ne kemi tё drejtё t’ja ndryshojmё vlerёn. Ose njё tjetёr shembull pёr
TextBox do tё ishte: TextBox i parё do tё krijohej me emrin TextBox1, TextBox i dytё
do tё krijohej me emrin TextBox2 dhe kёshtu me radhё. 
1.2.3  Kontrolli i emrave dhe konvertimi
Disa programus u japin tё gjithё kontrolleve nga njё emёr sipas funksionit tё tyre nё
program, duke pёrfshirё dhe ata kontrolle tё cilёt nuk shfaqen nё fjalitё e programit. Si
pёr shembull ёshtё nё dёshirёn e programusit tё japi nga njё emёr pёr label qё nuk
shfaqen nё program, por ai duhet patjetёr tё japi nga njё emёr pёr label tё cilat shfaqen nё
program. 
Megjithse vendosja e emrave pёr disa kontrolle ёshtё nё dёshirёn e programusit, pёr
vendosjen e emrave ekzistojnё disa rregulla tё cilat programusi ёshtё i detyruar ti zbatojё.
Emrat e kontrolleve duhet tё fillojnё me njё shkronjё dhe pjesa tjetёr mund tё jetё me
shkronja, numra ose karakter underscore. Nё emrin e kontrollit nuk mund tё ketё
karaktere si : hapёsirё, simbole speciale ose shenja pikёsimi. Gjenden tre rregulla tё
rёndёsishme nё vendosjen e emrave pёr kontroll. 
1)  Tre shkronjat e para tё emrit (prefix) duhet tё jenё me shkronja tё vogla, tё cilat
tregojnё tipin e kontrollit (lbl, txt,btn etj). Page 18 of 239
 
2)  Shkronja qё vjen mё pas, pra e katёrta duhet tё jetё me shkronjё tё madhe. Nёse
emri konstaton nё disa emra atёherё secili emёr do tё fillojё me shkronjё tё
madhe, kjo pёr arsye qё emri tё jetё mё i lexushёm si pёr shembull:
lblUnivesitetiVlorёs ёshtё mё i lexushёm se lblUnivesitetivlorёs.
3)  Pjesa pas tre shkronjave tё para duhet tё pёrshkruajё funksionin e saj nё program,
kjo e bёnё kodin mё tё kuptushёm. Si pёr shembull, lblUnivesitetiVlorёs kuptohet
se kjo lebёl do tё ketё njё funksion pёr Univesitetin e Vlorёs. 
 
1.3  PROÇESI I PROGRAMIMIT
 
Proçesi i programimit konsiston nё: dizenjimin, krijimin, testimin dhe debugging.
Imagjinoni se si njё inxhinjer ndёrtimi do tё ndёrtonte njё pallat shumё katёsh pa
njё skicё tё detajuar. E njёjta ide aplikohet dhe nё tё shkruarin e njё programi, ku
fillimisht duhet tё dizenjojmё se çfarё funksionesh programi ynё duhet tё ketё. Nё
kёtё kapitull ne do tё studiojmё disa koncepte bazё pёr krijimin e njё programi, tё
cilat janё tё vlefshme jo vetёm nё Visual Basic por dhe nё gjuhё tё tjera
programimi.          
1.3.1  Etapat pёr krijimin e njё aplikimi
Duke qenё se çdo programus arsyeton nё mёnyrё tё ndryshme dhe ka ide tё ndryshme se
si tё krijojё njё aplikim nuk ёshtё e thёnё qё etapat pёr krijimin e njё programi tё jenё
fikse dhe tё pandryshuara. Ne do tё shpjegojmё etapat pёr krijimin e njё aplikimi tё
caktuar, pasi nё kёtё mёnyrё do tё jetё mё e lehtё pёr tu kuptuar. Le ti studiojmё kёto
etapa pёr krijimin e njё aplikimi pёr tё llogaritur rrogёn e njё punёtori, ku pёrdorusit i
jepet mundёsia tё caktojё numrin e orёve tё punёs dhe pagesёn pёr çdo orё. 
1.  Pёrcakton çfarё aplikimi duhet tё bёjё
Nё kёtё etapё programusi duhet tё identifikojё qёllimin e aplikimit, informacionin pёr
input, proçesin e aplikimit dhe çfarё do tё jetё output. Pёr shembull nё aplikimin e
llogaritjes sё rrogёs sё punёtorit kemi: 
  Qёllimin:    Calculimin e rrogёs sё punёtorit.
  Input:          Numrin e orёve tё punёs dhe pagesёn pёr çdo orё
  Preçesi:       Shumёzon nurmrin e orёve tё punёs me pagesёn pёr çdo orё.     
  Output:       Shfaqё njё mesazh qё tregon pagesёn e punёtorit.  Page 19 of 239
 
2.  Imagjinimi i aplikimit nё kompiuter dhe dizenjimi i tij  
Para se programusi tё ulet dhe tё shkruaj kodin nё kompiuter ai duhet ta krijojё atё nё
mendjen e tij. Pra ai duhet tё imagjinojё se si aplikimi do tё duket kur ai tё punojё dhe tё
dizenjojё formёn. Pёr shembulli e mёsipёrm forma e dizenjuar ёshtё dhёnё nё Fig. 1.6.
Oret e punes
Pagesa per ore
Pagesa e punetorit 0.00
Llogarit pagesen Close
 
Fig. 1.6 Dizenjimi i formёs pёr llogaritjen e pagesёs sё punёtorit.
3.  Krijon njё listё tё kontrolleve tё nevoitura
Nё kёtё etapё krijohet njё listё me tё gjitha kontrollet e nevoitura nё aplikim, ku tё
shёnohen emrat e secilit prej tyre dhe tё tregohet njё pёrshkrim i shkurtёr pёr secilin
kontroll. Nё Fig. 1.7 po japim listёn e kontrolleve pёr programin llogarit rrogёn. 
 
Tipi i Controllit   Emri i kontrollit  Pershkrimi
Form  Nje forme e vogel Window
Label  Mesazhi Oret e punes
Label  Mesazhi Pagesa per ore
Label  Mesazhi Pagesa e punetorit
TextBox  txtOretPunes  Perdorusi mund te fusi numrin e oreve te punes
TextBox  txtPagesaOre  Perdorusi mund te fusi pagesen per ore pune
Label  lblPagesaPunetorit
Shfaq pagesen e punetorit pasi botoni btnLlogaritPagesen te
klikohet
Button  btnLlogaritPagesen
Kur butoni klikohet pagesa llogaritet dhe shfaqet ne
lblPagesaPunetorit  
Button  btnClose  Kur klikohet mbyll programin
 
Fig. 1.7 Kontrollet nё programin Llogarit rrogёn. Page 20 of 239
 
4.  Pёrcakton vlerat pёr secilin kontroll.
Pёrveç emrave tё cilёt i pёrcaktuam mё sipёr tani duhet tё pёrcaktojmё vlerat pёr secilin
kontroll. Nё Fig. 1.8 tregohen vlerat pёr secilin kontroll.    
Tipi i Controllit   Emri i kontrollit  Teksti
Form  "Llogarit Rrogen"
Label  "Numri i Oreve te Punes"
Label  "Pagesa per Ore"
Label  "Pagesa e Punetorit"
TextBox  txtOretPunes  ""
TextBox  txtPagesaOre  ""
Label  lblPagesaPunetorit  "0.00"
Button  btnLlogaritPagesen  "Llogarit Pagesen" 
Button  btnClose  "Close"
 
Fig. 1.8 Vlerat e kontrolleve nё programin Llogarit rrogёn.
5.  Krijoni njё listё tё metodave pёr secilin kontroll.
Nё kёtё etapё programusi duhet tё krijojё njё listё tё metodave dhe tё japi pёrshkrimin e
tyre. Nё programin Llogarit Rrogen gjenden vetёm dy metoda tё cilat janё:
btnLlogaritPagesen_Click dhe btnClose_Click. Vini re se metoda
btnLlogaritPagesen_Click ёshtё emri i metodёs qё thёrret btnLlogartiPagesen kur
klikohet dhe metoda btnClose_Click ёshtё emri i metodёs qё thёrret btnClose kur
klikohet. 
6.  Krijoni njё flowchart pёr secilёn metodё.
Njё flowchart ёshtё njё diagram qё grafikisht tregon rrjedhjen e ngjarjeve nё metod. Nё
Fig. 1.9 tregohet njё flowchart pёr btnLlogaritPagesen_Click. Gjenden dy lloje kutishё nё
kёtё diagram: gjysёmrrethore dhe drejtёkёndёsh. Flowchart fillon me gjysёmrrethin
Fillon dhe mbaron me gjysёmrrethin Mbaron. Drejtёkёndёshat tregojnё preçeset e
llogaritjes dhe ata janё tё lidhur me shigjeta tё cilat tregojnё drejtimin e vazhdushmёrisё
sё programit. 
 
Fig. 1.9 Flowchart pёr btnLlogaritPagesen_Click.
7.  Kontrolloni kodin pёr  gabime.
Nё kёtё etapё programusi lexon flowchart nga fillimi duke e vendosur veten nё
pozicionin e njё kompiuteri dhe duke kaluar hap pas hapi tё gjitha variablat dhe metodat. Page 21 of 239
 
Duke kaluar nё çdo etapё programusi mund tё konstatojё ndonjё gabim. Ideja e kёsaj
etape ёshtё qё sa mё shpejt programusi tё konstatojё gabimin aq mё kollaj do tё jetё pёr
ta rregulluar atё. 
8.  Starto Visual Studio dhe krijo formёn dhe kontrollet e etapёs 3. 
Ky ёshtё hapi i parё i punёs sё programusit nё kompiuter. Kёtu programusi pёrdor Visual
Studio pёr tё krijuar aplikimin.
9.  Shkruan kodin pёr secilёn metodё tё krijuar nё etapёn e 6. 
Ky ёshtё hapi i dytё i punёs sё programusit nё kompiuter. Proçedurat dhe metodat duhet
tё konvertohen nё kod dhe tё futen nё kompiuter duke pёrdorur Visual Studio.
10. Provon aplikimin nёse punon apo jo. 
Nё kёtё etapё programusi provon tё run programin dhe nёse çdo gjё ёshtё nё rregull
programi do tё compilet. Nёse programusi ka gabime gjatё shkruajtjes sё kodit ai nuk do
tё compilet dhe do tё na japi error. Error janё tё tipeve tё ndryshme dhe programusi duhet
tё rregullojё gabimin dhe tё vazhdojё deri sa programi tё mos na japi mё gabime.  
 
1.4  KRIJIMI I PROGRAMIT NЁ VISUAL STUDIO
 
Gjatё kёtij libri ne do tё pёrdorim zakonisht termin Visual Studio, por kini parasysh se
Microsoft Visual Studio ёshtё njё softwre i cili mund tё pёrdoret jo vetёm pёr krijimin e
aplikimeve nё Visual Basic, por dhe pёr krijimin e aplikimeve nё C++ dhe C#. Pra varet
çfarё software ju keni instaluar nё kompiuterin tuaj: Microsoft Visual Studio apo
Microsoft Visual Basic. Le tё shohim tani hap pas hapi se si tё startojmё Visual Studio.
Etapa e parё:  Kliko butonin Start dhe hap menun All Programs. Kliko Microsoft Visual Studio
2005 dhe kur menuja tjetёr tё shfaqet kliko pёrsёri Microsoft Visual Studio 2005.
Nёse jeni duke pёrdorur Microsoft Visual Studio 2005 dhe jo Microsoft Visual
Basic, herёn e parё qё ju do tё provoni tё startoni kёtё program njё window do tё
shfaqet, Choose Default Environment Settings. Zgjith nga lista Visual Basic
Developments Settings dhe kliko Start Visual Studio buton. 
Etapa e dytё:  Ju duhet tё shikoni Start Page si nё Fig. 1.10, kini parasysh se nёse nuk jeni tё
lidhur me internetin figura nuk do tё jetё e njёjtё pasi disa informacione vijnё nga
Web. Nёse nuk e shihni Start Page si nё figurёn e mёposhtme, atёherё kliko View
nё menu bar, kliko Other Windows dhe klilko Start Page. 
 
 Page 22 of 239
 
 
Fig. 1.10 Visual Studio Start Page.
 
 
Etapa e tretё: Nё menu bar kliko Tools dhe pastaj kliko Options dhe do tё shfaqet Fig. 1.11.
Fig. 1.11 Visual Studio Options dialog.
 Page 23 of 239
 
Etapa e katёrt:Nё Options dialog nёn Projects and Solutions, zgjith General dhe do tё
shfaqet Fig. 1.12. Nё tё djathtё tё Visual Studio projects location kliko
butonin Browse. Select njё location ku tё ruani projektet tuaja. 
 
Fig. 1.12 Lokalizimi i projektit Visual Studio.
 
 
Etapa e pestё: Pёrsёri nё Options dialog nёn Projects and Solutions, zgjith VB Defaults
si nё Fig. 1.13. Vendos Options Strict On dhe kliko OK pёr tё mbyllur
dialog. 
 
Etapa e gjashtё: Secili aplikim qё ju krijoni nё Visual Studio quhet project. Pёr tё nisur njё
project tё ri nё menu bar kliko File, pastaj kliko New Project dhe do tё shfaqet si
nё Fig. 1.14.
 
 
 
    
 Page 24 of 239
 
Fig. 1.13 Vendos VB nё Options dialog.
 
 
Fig. 1.14 Dialog box pёr projektin e ri.
 Page 25 of 239
 
Etapa e shtatё: Labeled Templates liston tipin e aplikimeve qё ju mund tё krijoni,
zgjidhni Windows Application si nё Fig. 1.14. 
Etapa e tetё:   Nё text box gjendet Name ku ju mund tё fusni emrin e projektit. Visual Studio
automatikisht vendos emrin WindowsApplication1, ndroshoni emrin e projektit
nё projekti 1. Njё projekt konsiston nё disa files, kur you filloni njё projekt,
Visual Studio ruan filat nё njё folder me tё njёjtin emёr tё projektit. Ndёrsa ju
krijoni gjithmonё dhe mё shumё projekte emri WindowsApplication1 nuk ju
ndimon ju tё mbani mend se çfarё ёshtё funksioni i secilit projekt. Pra ju
gjithmonё duhet tё ndryshoni emrin e projektit tё ri nё diçka qё ka lidhje me
qёllimin e projektit dhe kliko OK. 
Etapa e nёntё: Zgjith Save All nga menuja File dhe nёse dёshironi tё ndryshoni vendin e
ruajtjes sё kёtij projekti kliko butonin Browse dhe zgjith se ku doni ta ruani atё.
Pasi tё klikoni Save do tё shfaqet Fig. 1.15. Nёse Windows qё do tё hapet pёr ju
nuk duket saktёsisht si figura e mёposhtme, pёr shembull tё tjerё emra shfaqen
nёn Solution Explorer apo Properties, mos u shqetёsoni pasi nё kapitujt pёrgjatё
kёtij libri do ta kuptoni se si ato vlera ndryshohen.  
Fig. 1.15 Projekti i ri i hapur.
 Page 26 of 239
 
Etapa e dhjetё: Kliko Tools nё menu bar dhe kliko Options, kliko Text Editor Basic dhe VB
Specific si tregohet nё Fig. 1.16. Trego kujdes qё tё gjitha opsionet tё jenё tё
klikuara. Nёse jeni duke pёrdorur Visual Studio, proçedura ёshtё e njёjtё por pasi
tё klikoni Options, kliko Basic dhe pastaj VB Specific. 
 
Fig. 1.16 Teksti VB Specific.
 
 
Etapa e njёmbёdhjetё: Nё panelin nё krahun e majtё kliko Windows Form Designer dhe
sigurohuni qё parametrat tё jenё si nё Fig. 1.17. Veçanarisht tregoni
kujdes pёr: GridSize duhet tё jetё 8,8, ShowGrid duhet tё jetё True dhe
SnapToGrid duhet tё jetё True. Kliko OK pёr tё mbyllur dialog box. 
 
 
 
 
 
 
 Page 27 of 239
 
Fig. 1.17 Forma Windows pёr Designer settings.
 
 
Mjedisi nё Visual Studio
Visual Studio konsiston nё disa windows siç janё: Design Window, Solution
Explorer Window dhe Properties Window (shikoni Fig. 1.15). Kёto windows
mund tё lёvizen ose mund tё mbyllen dhe hapen pёrsёri. Por nёse ju nuk shihni
ndonjё prej tyre atёherё ndiqni pёrsёri etapat e mёsipёrme, pasi ёshtё e mundur qё
tё keni bёrё ndonjё zgjedhje gabim. 
Fshehja e Windous
Disa Windows nё Visual Studio kanё opsionin Auto Hide (psh nё Windows
Property ёshtё ngjitur me butonin Close), i cili mund tё kthehet off dhe Windows
do tё shfaqet, si psh Solution Explorer Window ose Properties Window. Pёr ta
kthyer on kliko Auto Hide, pra Windows nuk do tё shafaqet dhe ne do tё kemi mё
shumё hapsirё pёr tё punuar.  Nёse do i referohemi pёrsёri Fig. 1.15, Windows
Toolbox ёshtё on dhe pёr ta kthyer off ju duhet tё klikoni mbi tё.  
Windous Docked dhe Floating
Nёse do i referoheshim pёrsёri Fig. 1.15 do tё thoshim se Solution Explorer
Window dhe Properties Window janё docked, qё nёnkupton se ato janё tё
ngjitura me njёra tjetrёn. Por windows mund tё jetё Floating si nё Fig. 1.18. 
 Page 28 of 239
 
Fig. 1.18 Floating Windows.
 
 
Gjenden disa mёnyra pёr kthimin e windows nё docked dhe floating, por mё e
thjeshta ёshtё: kap windowsin me mouse dhe tёrhiqe nё pozicionin qё do ta
vendosёsh dhe windows automatiksht kthehet nga docked nё floating. Pёr ta
kthyer nga floating nё docked kliko dy herё shpejt mbi titullin e windowsit. 
Title Bar
Title bar tregon emrin e projektit qё ju jeni duke punuar, si psh nёse do i
referoheshim figurave tё mёsipёrme do tё thoshim se projekti ku ne jemi duke
punuar ёshtё 1.1. Nё Visual Studio Designe mode ёshtё hapёsira ku  ne do tё
punojmё pёr tё dizenjuar dhe krijuar aplikimin, Run mode ёshtё mёnyra ku ne
runim dhe testojmё aplikimin dhe Break mode ёshtё kur kemi dyshim pёr ndonjё
gabim tё mundshёm dhe e runim programin deri nё atё pikё. 
Toolbox
Zakonisht Toolbox window nё figurat tona ka qene hide, kliko mbi tё dhe shiko
windows tё cilat gjithashtu janё tё mbyllura, kliko disa prej tyre dhe shiko secila
prej tyre ka funksione tё caktuara tё cilat ne do ti studiojmё pёrgjatё kёtij libri. Nё
Fig. 1.19 tregohet Toolbox ku Common Controls ёshtё klikuar.  
 Page 29 of 239
 
Fig. 1.19 Toolbox.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Page 30 of 239
 
Ushtrime dhe Problema
 
1.1  Pёrshkruaj komponentёt e hardwarit tё kompiuterit tuaj ose tё njё
kompiuteri nё lab, pёrfshi tipin dhe shpejtёsinё e processorit,
kapacitetin nё main dhe second memory dhe tipet e I/O. 
1.2  Shpjego ndryshimin ndёrmjet random access memory (RAM) dhe
read-only memory (ROM).   
1.3  Gjatё kohёs qё programi Microsoft Word ёshtё duke u ekzekutuar
nё cilёn pjesё tё kompiuterit qёndron? Po pasi ne e mbyllim kёtё
program?   
1.4  Cili ёshtё ndryshimi ndryshimi ndёrmjet operating system dhe
aplication software?
1.5  Shpjego ndryshimin ndёrmjet kontrollit Label dhe kontrollit
TextBox, duke u pёrqёndruar nё funksionin e secilit kontroll?
1.6  Trego pёr kontrollet e mёposhtme kush janё tё saktё dhe kush jo.
Nёse nuk janё tё saktё trego pse.
1)  lblUniversitetiVlorёs
2)  lblUniversiteti Vlorёs
3)  txtEmriGjergji Shaska
4)  1912Pavarёsia
5)  txtFlamurtari
6)  btnRegjistrohu
1.7  Vendos njё emёr tё rregullt pёr secilёn nga fjalitё e mёposhtme. 
1)  Njё TextBox ku pёrdorusi tё jetё nё gjendje tё fusi emrin e tij.
2)  Njё TextBox ku pёrdorusi tё fusi mbiemrin e tij. 
3)  Njё buton i cili pёrdoret pёr tё mbyllur njё formё. 
4)  Njё buton qё pёrdoret pёr tё pastruar inputet nё njё forёm.
1.8  Krijo njё aplikim pёr shitjen e vezёve nё nje dyqan ushqimor, ku tu
referoheni etapave si mё poshtё.
1)  Pёrshkruaj karakterin e kёtij aplikimi.
2)  Skico formёn e aplikimit dhe vendos kontrollet qё do tё nevoiten.
3)  Bёjё njё listё pёr kontrollet duke pёrfshirё tipin dhe emrin.
4)  Bёjё njё listё pёr secilёn metodё qё nevoitet dhe vizato njё flowchart. Page 31 of 239
 
 
KAPITULLI 2
 
KRIJIMI I APLIKIMEVE
 
Nё kёtё kapitull do tё mёsojmё se si tё krijojmё njё aplikim nё Visual Studio. Nё
kёtё aplikim do tё pёrdoren labels, njё kontroll PictureBox dhe butonat. Do tё
mёsojmё se si tё shkruajmё kodin dhe do tё mёsojmё se si tё pёrdorim AutoSize,
BorderStyle dhe TextAlign pёr kontrollin Label.
 
2.1 KRIJIMI I APLIKIMIT DREJTIMI
 
Drejtimi shkencor i Universitetit tё Vlorёs e ka bёrё atё tё lakmushёm jo vetёm pёr
studentёt Shqiptarё, por dhe pёr shumё studentё tё rajonit dhe mё gjerё. Duke qёnё se
disa punonjёs tё universitetit tё cilёt komunikojnё nё telefon pёr tu dhёnё drejtimin e
rrugёve kёtyre studentёve apo dhe tё afёrmёve tё tyre tё cilёt vijnё pёr herё tё parё nё
kёtё universitet, nuk janё shumё familjar me drejtimin e rrugёve qё tё sjellin nё kёtё
universitet, studentёt e compiuter science vendosёn tё krijojnё njё program pёr kёtё
qёllim. Siç e shpjeguam nё kapitullin e parё puna e studentёve fillon me pёrcaktimin e
etapave pёr krijimin e kёtij aplikimi. 
1)  Pёrcakto çfarё aplikimi do tё bёjё.
2)  Dizenjo aplikimin duke e imagjinuar se si do tё punojё nё kompiuter. 
3)  Krijo njё listё pёr kontrollet e nevojshme. 
4)  Pёrcakto vlerat pёr secilin kontroll.
5)  Starto Visual Basic dhe krijo format dhe kontrollet. 
1)  Pёrcakto çfarё aplikimi do tё bёjё.  
Qёllimi:     Trego njё hartё pёr drejtimin nё Universitet
Input:         Asgjё
Proçesi       Shfaq njё forёm
Output:      Tregon nё formё njё hartё se si tё harrish nё Universitet.  Page 32 of 239
 
2)  Dizenjo aplikimin duke e imagjinuar se si do tё punojё nё kompiuter.
Pare se ju ta krijoni programin nё kompiuter ju duhet ta krijoni atё nё mendjen
tuaj. Pёrpiquni tё imagjinoni se si do tё duket ekrani i kompiterit kur programi tё
punojё dhe vizatoni njё skicё. 
 
Fig. 2. 1 Dizenjimi i formёs pёr drejtimin pёr nё UV. 
3)  Krijo njё listё pёr kontrollet e nevojshme.
Nё kёtё etapё ju krijoni njё listё pёr tё gjitha kontrollet qё nevoiten nё kёtё
aplikim, ku ju duhet tё tregoni emrat dhe tё jepni njё pёrshkrim tё shkurtёr pёr
secilёn. Nё aplikimin tonё nevoiten tre kontrolle tё cilёt tregohen nё Fig. 2. 2.
Vini re se ne nuk po vendosim ndonjё emёr tё veçantё pёr kontrollet pasi ne nuk
do i pёrdorim ato nё kodin e programit qё do tё shkruajmё mё vonё.
Fig. 2. 2 Kontrollet pёr aplikimin Drejtimi.
Tipi  Emri  Pershkrimi
Form  Form1
Nje forme e vogel window mbi te cilen vendosen kontrollet e
tjere
Label  Label1  Tregon mesazhin per drejtimin ne UV
PictureBox  PictureBox1  Tregon harten per ne hotel
4)  Pёrcakto vlerat pёr secilin kontroll
Vlerat pёr secilin kontroll janё paraqitur nё Fig. 2. 3. Vini re se pёr Label ne po
pёrdorim TextAlign property, e cila pёrcakton se si tekti shfaqet nё label. Pёr
PictureBox ne po pёrdorim fotografin UV.jpg e cila ёshtё savur mё parё.
SizeMode property ёshtё vendosur nё StrechImage, e cila na lejon tё ndryshojmё
madhёsinё e fotografisё kur e insertim nё formёn tonё. Nёse fotografia ёshtё Page 33 of 239
 
shumё e madhe, e zvogёlojmё dhe nёse fotografia ёshtё shumё e vogёl e
zmadhojmё.    
Fig. 2. 3 Vlerat pёr secilin kontroll.
Property  Value
Form
Name  Form1
Text  Drejtimi
Label
Name  Label1
Text  Drejtimi OU
TextAlign  MiddleCenter
Font
Microsoft Sans Serif, Bold
Italic, 20 point
PictureBox
Name  PictureBox1
Picture  UV.jpg
SizeMode  StretchImage
5)  Starto Visual Basic dhe krijo format dhe kontrollet
Tani ne jemi gati tё fillojmё tё krijojmё formёn e aplikimit. 
 
Fillimi i aplikimit nё Visual Studio
Etapa e parё:     Starto Visual Studio, ashtu siç bёtё nё kapitullin e parё. Pёr tё
krijuar njё projekt tё ri ju keni dy mundёsi: 
  Kliko File nё menun bar dhe kliko New Project
  Kliko New Project icon, e para icon nё toobar
Nё window New Project zgjith Windows Application icon nёn
Templates dhe  WindowsApplication1 duket pёr emrin e text box.
Nrysho kёtё emёr nё Drejtimi dhe kliko butonin OK. 
 Etapa e dytё:    Ju duhet tё shihni nё Designe Window njё formё tё re window
me emrin Form1 si nё Fig. 2. 4. Kliko formёn pёr tё patur akses
mbi tё dhe shiko property window. Nё Fig. 2. 4 scroll ёshtё
tёrhequr nё fund tё window, ju mund ta tёrhiqni atё lart dhe poshtё
pёr tё gjetur vlera tё caktuara nga lista pёr Form1. Siç e vini re
gjenden dy kollona: kollona majtas e cila tregon emrin dhe djathtas
e cila tregon vlerat pёr secilёn prej tyre. Kliko dy herё mbi Text
nёn window Properties, delete Form1 dhe type Drejtimi nё vend tё Page 34 of 239
 
saj. Shtyp butonin enter dhe do tё shihni nё title bar se nё vend tё
emrit Form1 do tё shfaqet emri Drejtimi. Megjithatё ne ndryshuam
vlerёn pёr Text dhe jo emrin e saj, po ti referohemi Fig. 2. 3 emrin
e kemi Form1. Pёr tu garantuar pёr kёtё shko nё fillim tё listёs dhe
shiko se (Name) ёshtё Form1.      
Fig. 2. 4 Form 1 dhe property window.
 
 
Shtimi i njё kontrolli Label
Etapa e parё:     Nё kёtё etapё ne do tё shtojmё njё kontroll Label nё formё.
Kliko Common Controls nё Toolbox window dhe kliko dy herё nё
icon Label, si nё Fig. 2. 5. Vёreni se forma e label ёshtё njё
drejtёkёndёsh me vija tё ndёrprera, i cili quhet bonding box. 
Etapa e dytё:     Duke qёnё se label ёshtё e aktivizuar Properties window do tё
tregojё vlerat e Labes1. Gjeni vlerёn pёr Text, delete Label1 dhe
type Drejtimi per ne UV, pastaj shtyp butonin enter. Label do tё
duket si nё Fig. 2. 6 ku label e rregullon vetё madhёsinё e saj pёr ta
pёrshtatur me madhёsinё e tekstit. Kapeni label me mouse dhe
lёvizeni nё pozicionin qё ju dёshironi.    Page 35 of 239
 
  
Fig. 2. 5 Kontrolli Label.
 
 
Fig. 2. 6  Label me tekstin e ri.
 Page 36 of 239
 
 
Etapa e tretё:  Nё windows Property gjeni Autosize property dhe vini re se
vlera e    saj ёshtё e vendosur nё True, vendoseni atё nё False duke
klikuar dy herё mbi tё. Vlerat pёr TextAlign tё cilat ne i diskutuam
dhe nё kapitullin e kaluar vendosin tekstin nё pozicionin qё ne
dёshirojmё. Klikoni nё opsionin nё tё djathtё qё ka TextAlign dhe
klikoni nё pozicionin e qёndrёs, si nё Fig. 2. 7. 
 
Fig. 2. 7 Vlerat pёr TextAlign.
 
 
Etapa katёr:    Kur krijuam vlerat pёr tekstin e label ne i vendosёm nё: Microsoft
Sans Serif, 20, Bold Italic. Nёpёrmjet Font property ne mund ta
ndryshojmё vlerat e tekstit. Kliko mbi Font nё Properties window
dhe kliko mbi kutin nё tё djathtё tё saj. Nё ekran duhet tё shfaqet
Fig. 2. 8 ku ёshtё e zgjedhur Microsoft Sans Serif. Kliko Bold
Italic nёn Font style dhe zgjith 20 nёn Size. Vini re se si teksti
ndryshon nё drejtёkёndёshin me emrin Sample. Kliko butonin OK.
Vini re se teksti nё label nuk duket plotёsisht pasi ne ndryshuam
vlerat e tij. Zmadho windows pёr formёn duke klikuar mё parё nё
tё, ju tashmё e dini se kur katrorёt e vegjёl duken rreth windows
kjo do tё thotё se tani ne kemi akses mbi kёtё window.     
 Page 37 of 239
 
Kliko pёrsёri mbi label dhe kap me mause dhe zmadho label deri
sa teksti tё duket qartё. Pёr tё fshirё njё label, kliko mbi tё dhe
shtyp butonin delete. Praktikojeni kёtё duke shtuar njё label nё
formё e cila nuk na nevoitet dhe kur ajo tё jetё e klikuar shtypni
butonin delete.   
Fig. 2. 8 Font pёr tekstin e label.
 
 
Kontrolli PictureBox
Etapa e parё: Nё ToolBox kliko dy herё PictureBox e cila do tё sjelli nё formёn
tonё njё PictureBox bosh. Lёvize atё afёrsisht nё pozicionin nё
mes tё formёs. Kliko mbi SizeMode nёn Properties dhe vendose
atё nё StrechImage, qё do tё pёrshtasi pёrmasat e fotogragisё me
ato tё PictureBox. Kliko Image nёn windows Properties, kliko
buonin Browse qё shfaqet nё tё djathtё, kliko Local resorce dhe
shko nё drejtimin ku fotografia ёshtё ruajtur. Fotografia do tё
shfaqet si nё Fig. 2. 9. Kliko OK dhe fotografia do tё shfaqet nё
PictureBox dhe pёrmasat e tyre do tё pёrshtaten me njёra tjetrёn
pasi ne e vendosёm vlerёn pёr PictureBox nё StrechImage. 
Etapa e dytё: Zmadho pёrmasat e PictureBox duke i kapur dhe i tёrhequr me
mouse anёt e saj. Zmadho deri sa fotografia tё jetё e kuptushme
qartё dhe me njё pamje tё pёrshtatshme nё forёm. Nё Fig. 2. 10
tregohet pamje pёrfundimtare pasi fotografia ёshtё pёrshtatur me
PictureBox dhe me pozicionin nё forёm.     Page 38 of 239
 
 
Fig. 2. 9 Insert fotografinё.
 
 
Fig. 2. 10 Drejtimi.jpg.
 Page 39 of 239
 
Save dhe run aplikimin
Etapa e parё:     Ka disa mёnyra pёr tё ruajtur njё aplikim: Kliko File nё menu
bar dhe kliko Save All, shtyp nё tё njёjtёn kohё nё keybord
Ctrl+Shift+S dhe e treta kliko nё toolbar butonin Save All. 
Etapa e dytё:     Tani qё ne e ruajtёm aplikimin ёshtё momenti pёr ta run atё.
Duke qenё se ky aplikim nuk ka kod, atёherё ai vetёm do tё shfaqi
PictureBox dhe Label. Tre janё mёnyrat pёr tё run njё aplikim nё
Visual Studio: Kliko butonin Start Debugging nё toobar, e dyta
kliko Debug on the menu bar dhe kliko Start Debugging dhe e treta
shtyp butonin F5. Provo njёrёn nga mёnyrat. Pas njё periudhe tё
shkurtёr do tё shfaqet njё window, e cila do tё qёndrojё e hapur
deri sa ju ti jepni komandёn pёr tё mbyllur aplikimin. Dy janё
metodat pёr tё mbyllu njё aplikim: Kliko butonin e windows close
ose kliko Debug nё menu bar dhe kliko Stop Debugging. Pёr tё
mbyllur kёtё projekt ju mund tё operoni si me çdo window, kliko
File dhe kliko exit ose kliko butonin ne cepin e djathtё tё windows. 
Save dhe run aplikimin
Tre janё metodat pёr tё hapur njё projekt: 
  Kliko emrin e projektit nё panelin Recent Projects dhe projekti duhet tё
hapet menjёherё, nёse jo atёherё ju mund tё keni ndryshuar pozicionin
ku e ruajtёt file fillimisht. Nёse forma nuk duket shikoni nё windowsin
Solution Explorer dhe klikoni dy herё nё Form1.vb. 
  Kliko butonin Open Project dhe browse nё Drejtimi dhe kliko nё
Drejtimi.sln. Kliko butonin Open. 
  Kliko File nё menu bar dhe kliko Open Projekt. Browse nё pozicionin e
files Drejtimi, kliko file Drejtimi dhe kliko Open.   
 
 2.2 KODI PËR APLIKIMIN DREJTIMI
 
Aplikimi Drejtimi u prit shumё mirё nga punonjёsit e universitetit, por ata patёn
dhe disa kёrkesa tё tjera pёr kёtё aplikim. Disa prej punёtorёve u kёrkuan
studentёve tё informatikёs qё bashkё me hartёn tё shfaqet dhe drejtimi me tё
shkruar. Disa tё tjerё kёrkuan njё buton pёr mbylljen e programit. Nisur nga kёto
sugjerime studentёt e informatikёs vendosёn tё shtojnё njё buton, i cili kur tё
shtypet tё tregojё drejtimin me fjalё. Gjithashtu ata vendosёn tё shtojnё dhe njё
buton tjetёr pёr tё mbyllur programin kur ёshtё duke runur.  Page 40 of 239
 
Nё figurёn e mёposhtёme po japim kontrollet qё do tё shtohen nё aplikimin
Drejtimi. Label qё do tё shfaqi drejtimin pёr nё universitet, do tё duhet ti japim
njё emёr pasi ajo do tё pёrdoret nё kod. Gjithashtu dhe dy butonave duhet tu
japim nga njё emёr pasi dhe ata do tё duhet ti pёrdorim nё kod. 
Fig. 2. 11 Kontrollet qё do tё shtohen nё aplikimin Drejtimi.
Tipi  Emri  Pershkrimi
Label  lblDrejtimi  Shfaq drejtimin me fjale per ne UV
Button  btnShfaqDrejtimin
Kur klikohet teksti i lblDrejtimi do te shfaqet ne
forem 
Button  btnMbyll  Ndalon aplikimin kur klikohet
 
Visible mund tё marrё vetёm dy vlera True ose False. Kur Visible merr vlerёn
True, kontrolli mund tё shihet nё forёm, ndёrsa kur merr vlerёn False ai nuk mund
tё shihet. Nё aplikimin tonё fillimisht ne duam qё teksti tё mos duket deri sa
butoni tё shtypet, pra fillimisht ne e vendosim vlerёn False dhe pastaj nёpёrmjet
kodit do ta kthejmё atё nё True.
Nё kёtё aplikim ne kemi dy butona tё cilёt kryejnё funksione tё caktuara nё
program, pra ne duhet tё shkruajmё kodin pёr kёta butona. Kur butoni
btnShfaqDrejtimin klikohet proçedura pёr btnShfaqDrejtimin_Click thёrritet.
Ndёrsa btnMbyll_Click ёshtё proçedura qё ekzekutohet kur butoni btnMbyll
klikohet. Fig. 2. 12 tregon flowchart pёr proçedurёn btnShfaqDrejtimin_Click dhe
Fig. 2. 13 tregon flowchart pёr proçedurёn btnMbyll_Click.   
 
Fig. 2. 12 Flowchart pёr btnDrejtimi_Click.
 
 
Fig. 2. 13 Flowchart pёr btnMbyll_Click.
 
 Page 41 of 239
 
2.2.1 Vendosja e lblDrejtimi, btnShfaqDrejtimi dhe btnMbyll
Etapa 1.       Hap Visual Studio dhe hapё projektin Drejtimi. Nёse Form1 nuk
shfaqet (varet se si e keni mbyllur programin herёn e fundit) kliko dy
herё Form1.vb nёn windows Solution Explorer.  
Etapa 2.       Tani do tё vendosim njё Label tё re e cila do tё shёrbejё pёr tё
treguar tekstin pёr drejtimin nё universitet. Ju tashmё dini se si ta bёni
kёtё duke klikuar dy herё mbi tё. Le tё shohim dhe njё mёnyrё tjetёr
pёr tё vendosur njё label nё formё. Kliko vetёm njё herё mbi Label
nёn windows Toolbox. Pastaj mbaje mausin tё shtypur deri sa ta
vendosni atё mbi forёm. Lёshojeni mausin dhe do tё shfaqet Label2. 
Etapa 3.       Ndrysho emrin pёr label nga Label2 nё lblDrejtimi dhe vendos
AutoSize nё False. Tani ju mund ta zmadhoni label dhe mё vonё pasi
tё shkruani dhe tekstin do tu duhet ta pёrshtasni me madhёsinё e
tekstit. 
Etapa 4.    Kliko label Text nёn Properties dhe kliko butonin me shigjetё nё
krahun e djathtё. Nё drejtёkёndёshin qё shfaqet type tekstin e
mёposhtёm dhe pastaj kliko kudo nё forёm. Figura e mёposhtёme
tregon se si teksti duhet tё shfaqet nё label. 
Fig. 2. 14 Label me tekstin pёr drejtimin.
 
 Page 42 of 239
 
Etapa 5.       Klikoni dy herё mbi Visible nёn Properties pёr ta vendosur atё nё
False, pasi ne duam qё kjo label tё shfaqet vetёm kur ne tё shtypim
butonin. Vini re se teksti ёshtё akoma i shfaqur nё forёm, pasi ne nuk
jemi duke e runur programin. 
Etapa 6.       Tani le tё vendosim butonat. Kliko dy herё Button nё Toolbox, njё
drejtёkёndёsh me emrin Button1 do tё shfaqet. Kape me mause dhe
vendose poshtё tekstit tё shfaqur nё label. Kliko dy herё pёrsёri pёr tё
sjellё nё formё dhe njё tjetёr buton, kape pёrsёri me mause dhe
vendose nё krah me butonin e parё. Forma duhet tё duket e ngjashme
me formёn e figurёs sё mёposhtme. 
Fig. 2. 15 Pozicioni i butonave.
 
Etapa 7.       Kliko mbi Button1 dhe nё window Properties ndrysho emrin e
butonit nё btnShfaqDrejtimi, duke klikuar mbi Name, kliko nё katrorin
nё tё djathtё dhe type btnShfaqDrejtimi. Kliko mbi Text, kliko nё
katrorin nё tё djathtё dhe type Shfaq Drejtimin. Madhёsia e butonit
nuk ёshtё e mjaftushёme kёshtu qё teksti i tij nuk duket i plotё.
Zmadhoje atё deri sa teksti tё shfaqet i plotё.  
Etapa 8.       Duke ju referuar etapёs 6 ndrysho emrin e butonit tё dytё nё
btnMbyll dhe tekstin nё Mbyll. Forma do tё duket si figura e
mёposhtme.  Page 43 of 239
 
 
Fig. 2. 16 Butonat si ata do tё duken nё forёm.
 
 
2.2.2 Kodi pёr butonat
Etapa 1.       Kliko dy herё mbi Shfaq Drejtimi. Fig. 2. 17 tregon se si ai do tё
duket. Kodi ёshtё njё window nё tё cilёn ju mund tё shkruani kodin
pёr programin tuaj. Kodi qё ju do tё shtoni duhet tё jetё ndёrmjet
rreshtit tё parё dhe tё fundit, tё cilёt tregojnё fillimin dhe mbarimin e
kёsaj metode.   
Fig. 2. 17 Kodi pёr butonin btnShfaqDrejtimi.
 Page 44 of 239
 
Etapa 2.    Kodi pёr kёtё buton do tё typet ndёrmjet rreshtit tё dytё dhe tё tretё, tё
cilёt tregojnё fillimin dhe mbarimin e metodёs pёr kёtё buton. Ne nuk
po i shpjegojmё nё kёtё moment se çfarё kuptimi ka rreshti i parё dhe
rreshti i dytё, pasi mendojmё se shpjegimi i tyre mё vonё do tё jetё mё
i lehtё pёr tu kuptuar nga ana juaj. Type kodin saktёsisht si mё poshtё. 
         'Bene qe label te duket
        lblDrejtimi.Visible = True
E vutё re se kur ju type pikё u shfaq njё listё e cila tregon
informacionin pёr tё kompletuar mё shpejtё pjesё tё fjalive. Kur ju
type V automatiksht zgjidhet Visible. Pёr ta zgjedhur atё shtyp butonin
tab ose butonin pёr hapёsirёn. Njё tjetёr listё automatike shfaqet kur
ju type =, e cila tregon vlerat boolen False ose True. 
Etapa 3.    Pёr tё kaluar mbrapa nё Designe window kliko nё tab Form1.vb
[Design] dhe pёr tё ardhur pёrsёri nё window e kodit, kliko nё tab
Form1.vb. Tani le tё shkruajmё metodёn pёr butonin tjetёr. Kliko dy
herё mbi butonin Mbyll. Ju duhet tё shkruani kodin si mё poshtё. Vini
re se fjalia e parё pёr tё dy kodet e butonave fillojn me njё apostrof
dhe fjalia ёshtё nё ngjyrё bojёbari. Kёto llojё fjalishё nuk janё pjesё e
kodit ato janё shёnime pёr tё ndimuar lexusin pёr tё kuptuar kodin.
Megjithatё ato janё pjesё e rёndёsishme pasi dhe ne qё po e shkruajmё
kёtё kod nёse do na kёrkohet pas disa muajve apo dhe viteve tё
shtojmё funksione tё tjera nё kёtё projekt nuk do jemi nё gjendje ta
kuptojmё atё pa kёto shёnime. Tani ato duken si kohё e humbur, por
nё tё vёrtetё ne kursejmё shumё kohё nё tё ardhmen. 
'Mbyll aplikimin
 Me.Close()
Etapa 4.    Tani ёshtё momenti ta ruajmё projektin dhe tё provojmё aplikimin.
Vini re se fillimisht teksti pёr drejtimin nё universitet nuk shfaqet dhe
pasi ne shtypim butonin Shfaq Drejtimin ai do tё shfaqet. Pёr tё
mbyllur aplikimin shtyp butonin Mbyll.  
2.2.2 Ndryshimi i ngjyrave tё tekstit
Etapa 1.    Le tё shohim tani se si mund tё ndryshojmё ngjyrёn e label (jo tё
tekstit tё label, por tё backgraund). Kliko window Design, kliko label
qё dёshironi tё ndryshoni ngjyrёn, psh label ku shfaqet teksti pёr
drejtimin nё UV. Kliko nё window Property BackColor. Kliko mbi
vlerёn e saj dhe pastaj kliko katrorin me shigjetёn poshtё. Pamje e
windows duhet tё jetё e njёjtё me pamjen si nё Fig. 2. 18. Nё kёtё Page 45 of 239
 
windows gjenden tre tabs: Custom, Web dhe System, tё cilat
kontrollojnё ngjyrat pёr kёtё label. Kliko mbi Custom dhe do tё
shfaqet njё tabelё me disa mundёsi zgjedhje pёr ngjyrat. Kliko mbi
ngjyrёn e dёshiruar dhe shiko se si ngjyra e label ndryshon. 
Etapa 2.       Nё kёtё etapё do tё ndryshojmё ngjyrёn e tekstit nё tё njёjtёn label.
Nё window Property kliko ForeColor dhe kliko katrorin me shigjetё
qё shfaqet nё tё djathtё. Vini re se tani shfaqet e njёjta tabelё qё
shpjeguam mё sipёr. Zgjith ngjyrёn e dёshiruar dhe save dhe testo
aplikimin.  
 
Fig. 2. 18 Lista BackColor.
 
 
 
 
 
 
 Page 46 of 239
 
Fig. 2. 19 Ngjyrat pёr label dhe tekstin e label tё ndryshuara.
 
 
2.2.3 Qytetet dhe Klubet e Futbollit
Duke qёnё se ju tashmё keni mёsuar se si tё krijoni njё projekt, keni mёsuar se si
tё krijoni njё forёm qё pёrmban label dhe butona nё projektin Qytetet dhe Klubet
e Futbollit, ne nuk do tё shpjegojmё nё shumё detaje punёn tonё nё kёtё projekt.
Nёse ju hasni nё ndonjё vёshtiresi, referohuni nё projektin e mёsipёrm Drejtimi.
Nё kёtё projekt pёrdorusi do tё ketё mundёsinё tё klikojё mbi butonin me emrin e
njё qyteti dhe tё shohi se kush ёshtё klubi i futbollit tё kёtij qyeti. Duke qenё se
ёshtё e njёjta proçedurё dhe pёr njё numёr mё tё math qytetesh ne po pёrdorim
vetёm tre prej tyre: Tirana, Vlora dhe Fieri. 
 Etapa 1.       Pasi tё keni krijuar projektin me emrin Qytetet dhe ta keni ruajtur nё
filёn qё ju dёshironi, ju jeni gati tё dizenjoni formёn pёr kёtё aplikim.
Krijo katёr butona me tekstet pёr secilin pёrkatёsisht si mё poshtё:
butoni parё me tekstin Tirana, butoni dytё me vlerёn pёr tekstin
Vlora, butoni i tretё me tekstin Fieri dhe butoni i katёrt Mbylle i cili
mbyll aplikimin. 
Etapa 2.       Krijoni nё forёm katёr label. Vendosni Label1 me emrin lblTirana
dhe tektin SK Tirana dhe tё gjitha vlerat pёr ngjyrёn, madhёsinё e
tekstit, ngjyrёn pёr label dhe tё tjera vlera qё ju dёshironi pёr label. Page 47 of 239
 
Tё njёjtёn gjё bёni dhe pёr labelat e tjera, ku emrat dhe tekstet do tё
jenё pёrkatёsisht: Label2 do ketё emrin lblVlora dhe tekstin Vlora,
Label3 do tё ketё lblFieri dhe tektin Fieri dhe label katёr do tё ketё
vetёm tekstin Klubet e futbollit. Duke qёnё se emri i kёsaj label nuk
do tё pёrdoret nё kod atёherё nuk ёshtё e nevojshme qё emri i saj tё
ndryshojё. Kini parasysh gjithashtu se Visibility pёr kёtё label nuk
duhet ndyshuar pasi ajo ёshtё gjithё kohёn e dukshme, ndёrsa pёr tre
labёlat e tjera ndyshon nё False qё mё vonё nёpёrmjet kodit tё
ndryshojё nё True. Fig. 2. 20 tregon dizenjimin pёr aplikimin Klubet
e futbollit.  
Etapa 3.       Tani ne jemi gati tё shkruajmё kodin pёr secilin nga butonat. Kliko
dy herё pёr secilin buton dhe shkruaj kodin pёrkatёsisht pёr secilin
prej tyre. Kodi nё tab Form1.vb do tё duket saktёsisht si mё poshtё. 
Public Class Form1
 
    Private Sub btnTirana_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnTirana.Click
 
        'Ben qe teksti S.K. Tirana te shfaqet
        lblTirana.Visible = True
    End Sub
 
    Private Sub btnVlora_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnVlora.Click
 
        'Ben qe teksti Flamurtari te shfaqet
        lblVlora.Visible = True
    End Sub
 
    Private Sub btnFieri_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnFieri.Click
 
        'Ben qe teksti Apollonia te shfaqet
        lblFieri.Visible = True
    End Sub
 
    Private Sub btnMbylle_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnMbylle.Click
        'Mbyll aplikimin
        Me.Close()
    End Sub
End Class Page 48 of 239
 
Fig. 2. 20 Dizenjimi i pёrfunduar i aplikimit.
 
 
Etapa 4.       Ruaj punёn tuaj duke klikuar Save All. Run programin dhe testo atё.
Nёse keni ndonjё probelm me tё fillimisht sigurohuni qё tre label janё
vendosur fillimisht False, pasi me anё tё kodit ato kthehen nё True. Ka
dhe shumё mёnyra tё tjera se si ne mund ti kontrollojmё vlerat pёr
tekstin me anё tё kodit, por ne nuk po i shpjegojmё nё detaje ato pasi
ju do i kuponi mё mirё kur tё jeni mё familjarё me tё shkruarit e kodit.  
 
2.3 KODI PËR IMAZHET
 
Nё kёtё pjesё ne do tё mёsojmё se ashtu si dhe butonat pёr tё cilёt ne shkruajtёm
kodin mё sipёr edhe PictureBox apo label mund tё kenё proçedura.  
Etapa 1.       Hap njё projekt me emrin Fanella, kliko me butonin e djathtё tё
mausit mbi tё nёn Solution Explorer. Vendos mausin mbi Add dhe
kliko mbi New Item, kopjo saktёsisht tekstin e mёposhtёm dhe mos u
mundni ta kuptoni atё.
Imports System.Reflection Page 49 of 239
 
Imports System.Runtime.InteropServices
 
' Ky kode sigurohet nga librari e VB. 
 
<Assembly: AssemblyTitle("")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("")> 
<Assembly: AssemblyProduct("")> 
<Assembly: AssemblyCopyright("")> 
<Assembly: AssemblyTrademark("")> 
<Assembly: CLSCompliant(True)> 
 
<Assembly: Guid("145A7AC3-0576-4946-B950-8D7404223E1C")> 
 
<Assembly: AssemblyVersion("1.0.*")>
Etapa 2.       Dizenjo formёn si nё Fig. 2. 21. Forma paraqet tre fotografi tё
fanellave tё Tiranёs, Flamurtarit dhe Vllaznisё. Kur pёrdorusi tё
klikojё mbi ndonjё prej fanellave nё label do tё shfaqet teksti duke
treguar se kujt prej skuadrave i pёrket. Ju tashmё dini se si ta dizenjoni
njё forёm tё tillё. Mos u keqkuptoni me formёn ndryshe qё duket pёr
label, pasi vlera e saj pёr BorderStyle ёshtё vendosur nё Fixed3D.
Megjithatё kjo vlerё ёshtё vetёm pёr dukjen e saj, pasi ajo punon dhe
me vlerat e pёrdorura mё parё.  
Etapa 3.    Klikoni mbi secilёn nga fotografitё dhe type kodin siç tregohet mё
poshtё. 
Pёr fanellёn Tirana.
'Tregon emrin e skuadres te ciles i perket fanella
        lblMesazhi.Text = "Tirana"
Pёr fanellёn Flamurtari.
        lblMesazhi.Text = "Flamurtari"
Pёr fanellёn Vllaznia.
        lblMesazhi.Text = "Vllaznia"
 
Etapa 4.       Run programin dhe testoje atё dhe sipas Fig. 2. 22.
 Page 50 of 239
 
Fig. 2. 21 Dizenjimi i aplikimit Fanella.
 
 
Fig. 2. 22 Programi ёshtё duke runur dhe ёshtё klikuar mbi fanellёn e Flamurtarit.
 
 Page 51 of 239
 
Ushtrime dhe Problema
 
2.1  Trego tre mёnyrat pёr tё run njё aplikim nё Visual Studio.
2.2  Shpjego ndryshimin ndёrmjet emrit tё label dhe tekstit tё label. Jep
njё shembull pёr njё label me emrin tuaj, duke treguar emrin dhe
njё tekst qё ju dёshironi.    
2.3  Cilat janё dy metodat pёr tё sjellё nё forёm PictureBox. 
2.4  Krijo njё program ku tё ketё njё forёm me emrin: Adresa.
Programi kur run fillimisht duhet tё ketё tё shfaqur vetёm dy
butona: butonin Trego Informacionin dhe butonin Mbyll. Kur tё
klikohet butoni Trego Informacionin nё forёm duhet tё shfaqen
katёr rreshta: nё rreshtin e parё duhet tё shfaqet emri dhe mbiemri
juaj, nё rreshtin e dytё duhet tё shfaqet numri dhe rruga e adresёs
suaj, nё rreshtin e tretё duhet tё shfaqet qyteti dhe nё rreshtin e
fundit Shteti. Kur tё klikohet butoni Mbyll aplikimi duhet tё
pёrfundojё.
2.5  Krijo njё program ku nё butona tё tregohen emrat e sicilit prej
anёtarёve tё familjes tuaj, pёrfshi dhe veten. Kur pёrdorusi tё
klikojё mbi secilin buton, pra mbi emrin e secilit prej tyre nё forёm
tё shfaqen datёlindjet e secilit prej anёtarёve tё familjes tuaj.    Page 52 of 239
 
 
KAPITULLI 3
 
VARIABLAT
 
Nё kёtё kapitull do tё studiojmё variablat, tё cilat mbajnё informacionin qё mund
tё manipulohet, tё pёrdoret pёr tё manipuluar informcion tjetёr ose tё ruhen pёr tu
pёrdorur mё vonё gjatё programimit. Jo vetёm me Visual Basic por dhe me
shumicёn e gjuhёve tё programimit, ajo çfarё ne bёjmё ёshtё ruajtja e vlerave nё
memorien e kompiuterit dhe manipulimi i tyre.  
 
3.1 KRIJIMI I VARIABLAVE
 
Njё variabёl ёshtё njё hapёsirё e ruajtur nё memorien e kompiuterit. Mendojeni kёtё si
qindra apo mijёra kuti boshe nё njё magazinё tё njё fabrike prodhimi kёpucёsh. Secila
prej kёtyre kutive boshe ёshtё njё variabёl. Supozojmё se nё njё kuti punёtorёt fusin 4
palё kёpucё, ndёrsa nё njё tjetёr fusin 5 palё kepucё. Pasi e paketojnё secilёn kuti ata
vendosin nga njё mbishkrim pёr tё dalluar se sa kёpucё janё nё secilёn kuti. Supozojmё
se njё klient porositё nёntё palё kёpucё. Punёtori i makazinёs vjen dhe merr njё kuti me
katёr palё kёpucё dhe njё kuti me pesё palё kёpucё dhe ja dorёzon klientit. Pak a shumё
nё mёnyrё tё ngjashme funksionon dhe ideja e variablave nё kompiuter. 
Nёse ju doni tё mblidhni dy numra sё bashku (4+5), ju vendosni numrat nё hapёsirёn e
ruajtjes sё kompiuterit dhe i tregoni Visual Basic tё llogarisi shumёn. Por pa variablat kjo
ёshtё e pamundur. Duke vazhduar pёrsёri me shembullin e kutive pёr tё llogaritur
shumёn e kёtyre dy numrave ju do tё veproni si mё poshtё. Shkruani numrin e parё 4 nё
njё letёr dhe vendoseni kёtё letёr nё njё kuti boshe. Shkruani numrin e dytё nё njё letёr
dhe e vendoseni nё njё tjetёr kuti boshe. Por nё magazinё janё qindra mijёra kuti dhe
vetёm dy prej tyre kanё letrat me numrat nё to. Pёr ti dalluar ato vendosni nga njё emёr
pёr secilёn duke u ngjitur nga njё mbishkrim numri1 dhe numri2. 
Nёse do tё flisnim nё gjuhёn e kompiuterit çfarё ju bёtё deri tani ёshtё: Ju krijuat njё
hapёsirё nё memorie (magazina dhe kutitё), ju zgjodhёt dy kuti pёr tё mbajtur numrat (dy Page 53 of 239
 
variabla) dhe i dhatё secilёs prej variablave nga njё emёr (numri1 dhe numri2) pёr ti
mbajtur mend. 
Tani le tё studiojmё kodin:
Dim numri1 As Integer
Dim numri2 As Integer
 
numri1 = 4
numri2 = 5
Le tё studiojmё kodin se çfarё kuptimi ka secila fjalё.
Dim       Pёrdoret shkurtimisht pёr fjalёn Dimension e cila ёshtё njё llojё variable.
Duke pёrdorur kёtё fjalё ju i tregoni Visual Basic qё ju po deklaroni njё variabёl.
Mё vonё ne do tё pёrdorim dhe tipe tё tjera variablash, por pёr tani mbani mend
qё tё filloni deklarimin e variablave me Dim. 
numeri1     Kjo ёshtё kutia e parё me emrin e shёnuar mbi tё, pra kjo ёshtё
variabla e parё, ose e thёnё ndryshe hapёsira nё memorie. Pas fjalёs Dim Visual
Basic ёshtё duke parё pёr emrin e kёsaj variable. Ju mund ti jepni njё variable
çfarёdo llojё emri, megjithatё ёshtё mё mirё qё emri i variablёs tё jetё i afёrt me
rolin e saj. 
As Integer   Ju po i tregoni Visual Basic qё variabla do tё jetё njё numёr
(integer). Nё tё arthmen ne do tё pёrdorim dhe shumё tipe tё tjera tё dhёnash. 
numeri1 = 4    Shenja = nuk ёshtё saktёsisht me shenjёn = tё cilёn ju jeni mёsuar
tё pёrdorni nё matematikё. Shenja = nёnkupton vendosjen e njё vlere nё variabёl,
e cila quhet assign. Ne po i tregojmё Visual Basic tё vendosi vlerёn 4 nё
variablёn numri1. 
Le tё krijojmё tani njё aplikim nё Visual Basic. 
Etapa 1:       Krijo njё forёm dhe vendos nё tё njё Textbox dhe njё buton, tё cilit
ndryshojani tekstin nё Shuma. Dizenjojeni formёn si nё Fig. 3. 1.
Etapa 2:       Kliko dy herё mbi butonin Shuma dhe shiko se kursori duhet tё
ndodhet ndёrmjet rreshtit tё dytё dhe tё tretё. Le tё shpjegojmё
kuptimin e fjalёve nё secilёn prej fjalive. 
Private     Kjo komandё nёnkupton qё asnjё pjesё tjetёr e programit nuk mund ta
shohi kёtё kod pёrveç kёtij butoni.  Page 54 of 239
 
Sub      Kjo komandё ёshtё shkurtimi i fjalёs Subroutine, e cila i trogon Visual
Basic qё njё kod do tё jetё nё vazhdim dhe do tё ekzekutohet. 
Button1  Ky ёshtё emri pёr butonin e pёrdorur nё formёn tonё. Nёse ju do tё
pyesnit pse emri i tij quhet akoma Buttoni1 pasi ne ja ndёrruam emrin,
ne do tё pёrgjigjeshim se kur ju ndёrrut emrin e butonit Visual Basic
automatikisht bёn ndёrrimin e kёtij emri pёr ju.
_Click   Kjo komandё quhet njё ngjarje. Kjo do tё thotё se kur butoni klikohet
kodi qё duket pёr kёtё buton do tё ekzekutohet. Kini parasysh se kur
undrscore pёrdoret nё fund tё fjalisё (_) ajo krijon njё lidhje ndёrmjet
kёsaj fjalie dhe fjalisё nё rreshtin e mёposhtёm. 
End Sub  Kodi pёr butonin mbaron kёtu.  
Fig. 3. 1 Forma e dizenjuar.
 
 
Type kodin pёr butonin ndёrmjet rreshtit tё dytё dhe tё tretё si mё poshtё:
 
        Dim numri1 As Integer
        Dim numri2 As Integer
        Dim pergjigja As Integer
 Page 55 of 239
 
        numri1 = 4
        numri2 = 5
 
        pergjigja = numri1 + numri2
 MsgBox(pergjigja)
Start Debuging dhe kliko mbi shuma, output duhet tё jetё si nё figurёn e
mёposhtme. 
Fig. 3. 2 Pёrdorimi i Message Box.
 
Pra pёrgjigja pёr aplikimin tonё u shfaq nё njё tjetёr windows. Le tё shohim mё
nё detaje kodin e pёrdorur nё kёtё aplikim. 
  Fillimishtё ne pёrdorёm fjalёn Dim pёr ti treguar Visual Basic qё ne duam
tё vendosim njё variabёl.
  Pastaj ne i japim variablёs njё emёr (numri1).
  Ne i tregojmё Visual Basic qё brenda nё variabёl ёshtё njё numёr (As
Integer).
  Nё tё njёjtёn mёnyrё ёshtё vendosur dhe variabla numri2 dhe pergjigja.
  I tregon Visual Basic qё nё variablёn e parё ёshtё numri 4 dhe nё
variablёn e dytё ёshtё numri 5. Pёr tё vendosur diçka nё variabёl pёrdoret
assignement operator =, i cili vlerёn e krahut tё djathtё e vendos nё
krahun e majtё. 
        numri1 = 4
        numri2 = 5 Page 56 of 239
 
Nё fjalinё tjetёr vlerat qё ndodhen nё secilёn variabёl janё mbledhur sё bashku
dhe janё vendosur nё variablёn pergjigje. 
        pergjigja = numri1 + numri2 
Nё fjalinё e fundit pёrdoret njё Message Box, nё tё cilin shfaqet vlera e variablёs
pergjigja.
        MsgBox(pergjigja)  
Por ju gjithashtu mund ta shfaqni pёrgjigjen dhe duke pёrdorur TextBox. Delete
MsgBox(pergjigja) dhe type TextBox1.Text = CStr(pergjigja). Kjo ёshtё e njёjtё
me atё qё ju mёsuat nё kapitullin 2, veçse kёtu ne po vendosim vlerёn pёr
Textbox me kod dhe jo duke shkuar nё window Properties dhe ndёrruar vlerёn e
saj. Nё kёtё kod  po pёrdorim CStr tё cilёn do ta shpjegojmё nё vazhdim kur tё
flasi pёr string. 
Fig. 3. 3 Pёrdorimi i TextBox.
 
 
Njё tjetёr mёnyrё, ndoshta dhe mё e pёrdorshme, pёr tё vendosur vlera nё
variabla ёshtё mёnyra e mёposhtme, megjithatё ato janё tё dyja tё njojtura nga
Visual Basic dhe ёshtё nё dorёn tuaj cilёn tё pёrdorni. Page 57 of 239
 
Dim numri1 As Integer = 4
Do tё ishte mirё qё tani ju tё praktikoni kёtё program duke zёvendёsur numrat 4
dhe 5 me numra tё tjerё dhe tё vёreni vlerat e shfaqura nё output. Gjithashtu
ndrysho operatorin + me -, *, / dhe numrin e variablave.   
 
3.2 VARIABLAT STRING
 
Ju mёsuat rreth variablave, çfarё janё ato dhe si ti deklarojmё ato. Ju mёsuat
fjalёn “integer”, e cila ёshtё njё variabёl qё mban numra. Po nёse ju nuk doni
numra, por diçka tjetёr tё ruhet nё variabёl. Pёr shembull, nёse ju doni tё ruani
Emrin dhe Mbiemrin, tё cilёt nuk janё numra. Kjo realizohet nёpёrmjet String. 
Ç’farё ёshtё njё String? E vёrteta ёshtё se njё String nuk ёshtё asgjё mё shumё se
njё tekst. Nёse ne duam qё Visual Basic tё ruaj tekstin ne duhet tё pёrdorim fjalёn
“String”. Nё tё njёjtёn mёnyrё si deklarohet njё numёr (As Integer), deklarohet
dhe njё String (As String). Nёse ne duam tё ruajmё emrin dhe mbiemrin si String
atёherё:
Dim emrin As String
Dim mbiemrin As String
Fillimisht ne fillojmё me Dim pёr ti treguar Visual Basic pёr variablat dhe
vazhdojmё duke i treguar se duam tё ruajmё tekstin nё variabёl si: As String. Ne i
deklaruam variablat si String por tani duhet tё ruajmё vlerat nё to. Le tё ruajmё
emrin Gjergji dhe mbiemrin Shaska nё to. 
  Emri = “Gjergji”
  Mbiemri = “Shaska”     
Kёtu ne i themi Visual Basic tё ruaj fjalёn Gjergji nё variablёn emri dhe fjalёn
Shaska nё variablёn mbiemri. Siç e shihni pёr tё ruajtur si String ёshtё e
detyrushme pёrdorimi i quotation marks. Vetёm nёpёrmjet kёtyre shenjave
Visual Basic e dallon tekstin. 
Pёr ta testuar kёtё shtoni dhe njё buton dhe vendosni Text nёn Properties: String Teksti.
Forma do tё duket nё Fig. 3. 4. Kliko dy herё mbi butonin dhe shto kodin pёr kёtё buton
si:
        Dim emri As String
        Dim mbiemri As String Page 58 of 239
 
        Dim emriMbiemri As String
 
        emri = "Gjergji"
        mbiemri = "Shaska"
        emriMbiemri = emri & " " & mbiemri
 
        TextBox1.Text = emriMbiemri
Ju tashmё jeni familjarё me kёtё kod, ku i vetmi rresht i cili duhet shpjeguar ёshtё rreshti:
        emriMbiemri = emri & " " & mbiemri 
Nё variablёn emriMbiemri vendosen tё dyja vlerat e variblave emri dhe mbiemri tё
lidhura me shenjёn e dollarit &. Arsyeja pёrse po pёrdorim dy shenja dollari ku ndёrmjet
tyre kemi njё String me hapёsirё ёshtё pёr tё krijuar hapёsirёn ndёrmjet emrit dhe
mbiemrit. Kёto llojё lidhjesh tё String nё Visual Basic quhen Concatenation. Pasi Visual
Basic lidh tё dyja String sё bashku, ai i ruan ato nё variablёn emriMbiemri. Testo
programin i cili duhet tё duket si nё figurёn e mёposhtёme. 
 
Fig. 3. 4 Design Form pёr String Tekst.
 
 
 Page 59 of 239
 
Fig. 3. 5 Testimi i String Test.
 
 
3.2.1 Marrja e tekstit nga TextBox dhe vendosja nё variabёl
Nё vend tё vendosim direkt tekstin nё njё variabёl, si “Gjergji” ose “Shaska”, ju
mund tё merrni tekstin nga njё TextBox dhe ta vendosni nё njё variabёl. Le ta
shohim se si mund ta realizojmё kёtё duke pёrdorur tё njёjtin program. Pёr kёtё
fillimisht shtoni njё TextBox nё forёm dhe vendosni pёr vlerёn Name
txtMbiemri. Nё tё njёjtёn windows Properties shko nё Text dhe fshini vlerёn e
saj dhe mos type asnjё vlerё nё tё. Kliko nё TextBox1 (ndodhet nё forёm e
pёrdorёm mё parё). Ndrysho Name nga TextBox1 nё txtMbiemri. Ne po u japim
tё dy TextBox emra tё cilёt janё tё pёrafёrt me funksionin e tyre, pasi ne do i
pёrdorim kёto nё kod. Ndrysho kodin pёr Button2 si:
        Dim emri As String
        Dim mbiemri As String
        Dim emriMbiemri As String
 
        emri = txtEmri.Text
        mbiemri = txtMbiemri.Text
        emriMbiemri = emri & " " & mbiemri
 
MsgBox(emriMbiemri)
Start Debugging dhe type emrin dhe mbiemrin tuaj nё secilin TextBox. Kliko
butonin String Tekst dhe vёreni se Message Box duhet tё duket si nё Fig. 3. 6. Nё Page 60 of 239
 
kёtё aplikim nuk po pёrdorim vetёm Gjergji Shaska, pasi ka dhe shumё emra tё
tjerё. Kushdo nga pёrdorusit mund tё type njё emёr dhe mbiemёr dhe ai do tё
shfaqet nё Message Box.  
 
Fig. 3. 6 Start Debugging me Message Box.
 
 
Nё aplikimin pёr programin e mёsipёrm kur ne typim emrin dhe mbiemrin pёr njё
persorn tё caktuar dhe e shfaqim atё emёr nё label dhe duam tё  shfaqim njё tjetёr
emёr dhe mbiemёr, ne duhe tё shkojmё nё secilin TextBox dhe tё fshim ekzistusin
qё ta zёvendёsojmё me tё emrin dhe mbiemrin e ri. Kjo mёnyrё nuk duket shumё
praktike. Nё kёtё program ne do tё krijojmё njё aplikim pёr tё realizuar kёtё. 
Etapa 1         Dizenjo njё forёm si nё figurёn e mёposhtme. 
 
 
 
 Page 61 of 239
 
 
Fig. 3. 7 Dizenjimi i Formёs pёr butonin Pastron.
 
 
Etapa 2         Kliko dy herё mbi butonin Emri dhe type kodin e mёposhtёm:
        ' Deklaron nje variabel per emrin dhe mbiemrin
        Dim strEmriMbiemri As String
 
        ' Kombino emrin dhe mbiemrin dhe kopjo rezultatin ne lblEmriMbiemri
        strEmriMbiemri = txtEmri.Text & " " & txtMbiemri.Text
  lblEmriMbiemri.Text = strEmriMbiemri
Etapa 3         Kliko dy herё mbi butonin Pastron dhe type kodin e mёposhtёm, pёr tё cilin
vini re     mёnyrёn se si pastrohen nga teksti TextBox dhe si pastrohen Label
        ' Fshin tekstin per TextBox dhe Label
        txtEmri.Clear()
        txtMbiemri.Clear()
        lblEmriMbiemri.Text = String.Empty
 
        ' Vendos kursorin ne txtEmri
        txtEmri.Focus() Page 62 of 239
 
Etapa 4         Kliko dy herё mbi butonin mbyll dhe type kodin pёr tё cilin ju tashmё dini
ta shkruani. Save dhe Start Debugging. Testo programin duke futur nё tё emra
dhe mbiemra tё ndryshёm dhe duke klikuar mbi butonin Pastro.
 
3.3 DATA PRIMITIVE
 
Gjenden tetё data primitive: katёr janё pёr numrat integers, dy janё pёr numrat
floating, njё llojё data character dhe njё boolean data. Dy janё llojet bazё tё
vlerave numerike: integers qё nuk ka fraksione dhe floating qё ka fraksione. Data
Integers janё katёr tipe: byte, short, int dhe long. Floating tipe janё dy: float dhe
double. Njё pёrmbledhje e tyre ёshtё dhёnё nё Fig. 3. 8.
Tipi
Ruajtja
(bits)  Vlera Min  Vlera Max
byte  8  -128  127
short  16  -32,768  32.767
int  32  -2,147,483,648  2147483648
long  64  -9.22E+18  9.22E+18
float  32  -3.40E+38  3.4E^+38
double  64  -1.7E^308  1.7E^308
Fig. 3. 8 Vlerat numerike pёr çdo tip.
Tipet numerike janё signed, qё nёnkupton qё tё dyja numrat pozitiv dhe numrat
negativ mund tё ruhen nё to. Duhet treguar kujdes se cili tip primitiv data duhet
pёrdorur, e cila varet nga kёrkesat e programit qё ne jemi duke shkruar.
Megjithatё mё tё pёrdorshmet nё shembujt tanё do tё jenё int, long dhe float.   
Njё boolean vlerё pёrdoret me fjalёn e rezervuar boolean, e cila ka vetёm dy
vlera: true (e vёrtetё) dhe false (e gabur). Boolean janё gjerёsisht tё pёrdorura nё
programim dhe pёrdoren kur kemi tё bёjmё vetёm me dy pozicione, e vёrtetё apo
e gabuar. Vlerat pёr boolean janё sidomos tё pёrdorshm kur kemi tё bёjmё me
loops apo me if statement. 
 
3.3.1 Konvertimi i datave
Ndonjёherё ёshtё e nevojshme tё konvertojmё nga njё  tip data nё njё tjetёr tip
data por duhet tё tregojmё kujdes qё mos tё humbim data. E rёndёsishme pёr tu
kuptuar kur ne pёrdorim konvertimin e datave ёshtё qё ne mund tё konvertojmё
nga njё tip data me madhёsi mё tё vogёl nё njё tip data me madhёsi mё tё madhe Page 63 of 239
 
pa humbur data, kёto quhen widening conversions. E anasjellta kur ne
konvertojmё nga njё tip data me madhёsi mё tё madhe nё njё tip data me madhёsi
mё tё vogёl quhen narrowing conversions dhe mund tё na japi humbje nё data.
Duke qenё se widening conversions nuk kanё humbje nё data ato janё tё sigurta
dhe tё rekomanduara tё pёrdoren. Nё se duam tё konvertojmё nga byte nё int
atёherё kemi tё bёjmё me widening conversions pasi po konvertojmё nga byte qё
ёshtё 8 bits to int qё ёshtё 32 bits. Pra madhёsia e int ёshtё mё e madhe se
mdhёsia e byte kёshtu qё ky konvertim ёshtё i sigurt (shiko Fig. 3. 8). Nga ana
tjetёr nёse do tё konvertonim nga int nё byte do tё kishim humbje tё data pasi int
ёshtё 32 bits dhe nuk mund tё vendoset nё byte qё ёshtё 8 bits. Nё kёtё rast kemi
narrowing conversions. Fig. 3. 9 jep njё pёrmbledhje tё primitive data pёr
widening conversions. Provoni si njё ushtrim tё krijoni njё tabelё tё tillё pёr
narrowing conversions.
Nga data  Ne data
byte  short, int, long, float, double
short  int, long, float, double
char  int, long, float, double
int  long, float, double
long  float, double
float  Double
Fig. 3. 9 Konvertimet widening.
 
3.3.2 Programi pёr testimin e tipeve data
Deri tani ne kemi parё variabla tё deklaruara si: As String dhe As Integer. Por ka
variabla qё mund tё deklarohen dhe nё shumё forma tё tjera. 
Etapa 1:        Krijoni njё program tё ri dhe vendosini emrin TipetData (ose njё
emёr tjetёr nё se dёshironi). Vendosni nё forёm njё buton me vlerat:
Text - Pergjigja dhe njё tekst me vlerat: Name - txtNumri, Text -
Delete vlerat dhe mos shёno gjё. Kliko mbi forёm dhe ndrysho Text
nёn Properties nё Testo Data. 
Etapa 2:        Kliko dy herё mbi butonin Pergjigja dhe type kodin e mёposhtёm:
 
        Dim tekstNumri As Short = CShort(txtNumri.Text)
 
        MsgBox(tekstNumri)
 Page 64 of 239
 
Vini re tipin e ri tё variablёs As Short, e cila nёnkupton njё numёr Short i cili
ndodhet ndёrmjet -32,768 dhe 32,768 (shiko Fig. 3. 8). Pёr ta kuptuar mё
mirё Start Debugging dhe fusni numrin 1 dhe kliko butonin Pergjigja. Numri
1 do tё shfaqet nё Message Box si nё Fig. 3. 10. Kryeni tё njёjtat veprime pёr
numrin 2, pastaj kryeni tё njёjtat veprime pёr 3, 4, 5, dhe 6. Vini re se kur ju
shtypni Pergjigja pёr numrin 6 programi nuk funksionon mё, por na tregon se
diçka ёshtё gabim nё kod. Error message ёshtё treguar nё 
 
 
 
 
 
Fig. 3. 11. As Short mund tё mbajё njё numёr deri nё 5 shifra, jo me 6 shifra.   
 
Fig. 3. 10 Testo As Short.
 
 Page 65 of 239
 
 
 
 
 
 
Fig. 3. 11 Error Message.
 
Etapa 3:        Kliko nё Form1.vb dhe ndrysho kodin nga As Short nё As Integer.
Provo pёrsёri numrat dhe trego kujdes kur funsni numrin 6. Siç e
shihni programi vazhdon funksionin e tij normalisht. Po ti referoheni
pёrsёri Fig. 3. 8, shohim se pёr Integer kufiri i vlerave ёshtё nga -
2,147,483,648 nё 2,147,483,648. Testojeni programin dhe me tipe tё
tjera vlerash, gjithashtu dhe me vlera negative. 
Etapa 4:        Pasi ta keni testuar programin pёr tipe tё ndryshme vlerash, lereni
atё nё As Integer. Start Debugging dhe fusni nё TextBox numrin
12.37 dhe kliko Pergjigja. Numri 12 shfaqet nё Message Box, pasi ju
po pёrdorni As Integer. Testojeni programin me numra tё tjerё
dhjetor, gjithashtu dhe me numra negativ.    Page 66 of 239
 
3.3.2 Transferimi i pёrmbajtjes sё njё TextBox
Le tё shohim tani se si mund tё transferojmё pёrmbajtjen e njё TextBox nё njё
Label dhe gjithashtu si tё transferojmё tekstin e njё Label nё njё TextBox. 
Dizenjo njё forёm e cila tё pёrmbajё dy butona, njё TextBox dhe njё Label. Ju
tashmё keni mёsuar si ta bёni kёtё, kёshtu qё ne nuk po i shpjegojmё nё detaje
veprimet qё duhet tё kryeni. Forma juaj duhet tё duket si Fig. 3. 12. Ndrysho
vlerat pёr to si mё poshtё (ju tashmё e kuptoni se vlerat e tyre nuk duhet tё jenё
saktёsishtё si vlerat e mёposhtme, ju mund tё pёrdorni vlera dhe variablat tuaja) :
TextBox
Name: txtVariabla
Text: Fshi vlerёn dhe lere boshё
Label 
Name: lblTransferon
Text: Label
Button 
Name: btnTransferon
Text: Transferon ne TextBox
Button 
Name: cmdTransferonLabel
Text: Transferon ne Label
Fig. 3. 12 Dizenjimi i formёs Transferon Informacionin. Page 67 of 239
 
 
Kliko dy herё mbi butonin Transferon ne TextBox dhe type kodin si mё poshtё:
        Dim permbajtjaLabel As String = lblTransferon.Text
 
        txtVariabla.Text = permbajtjaLabel
 
Kliko dy herё mbi butonin Transferon ne Label dhe type kodin si mё poshtё:
        Dim permbajtjaTextBox As String = txtVariabla.Text
 
        lblTransferon.Text = permbajtjaTextBox
 
Start Debugging dhe testo programin. Kur ju klikoni mbi butonin Transferon ne
Tekst ju duhet tё shihni Label nё TextBox, e cila ёshtё vlera e Label qё ne i
dhamё mё parё. Ju mund ta ndryshoni vlerёn e saj me emrin tuaj dhe ta testoni
atё. Pasi tё typni njё tekst qё ju dёshironi nё TextBox kliko butonin Transfer ne
Label dhe vereni se si teksti do tё transferohet nё Label. Nёse do tё bёnim njё
pёrmbledhje tё atyre qё mёsuam nё kёtё program pёr mёnyrёn se si realizohen
kёto transferime do ti pёrmlidhnim me tre pika:
  Krijo njё variabёl
  Transfero tekstin e TextBox (Label) nё variabёl
  Transfero variablёn nё Label (TextBox)  Page 68 of 239
 
3.4 PROJEKTI KALKULATORI
 
Nё kёtё program ne do tё krijojmё njё aplikim tё njё kalkulatori, i cili nuk do tё jetё
shumё i sofistikuar dhe nuk do ti pёrmbajё tё gjitha funksionet e tij, por vetёm se si tё
mbledhim dy ose mё shumё numra. Nё kёtё program ju do tё fitoni mё shumё praktikё
me pёrdorimin e variablave dhe transferimin e vlerave.  
Etapa 1:  Krijoni njё projekt tё ri dhe quajeni Kalkulatori. Fillimisht le tё
dizenjojmё formёn. Kush ёshtё funksioni i njё kalkulatori? Ai
nevoitet pёr tё mbledhur numrat: duke shtypur fillimisht numrin,
pastaj duke shtypur butonin plus, vzhdojmё me numrin e dytё dhe nё
kёtё mёnyrё deri sa tё fusim tё gjithё numrat dhe nё fund shtypim
butonin e barazimit. Nisur nga kjo forma ka nevojё pёr butonat duke
nisur nga 0 nё 9, butonin +, butonin = dhe njё bouton pёr tё fshirё
numrat nё njё TextBox pasi tё kemi marrё vlerёn pёr njё shumё dhe
duam tё fusim numra tё tjerё. Le tё vendosim vlerat pёr butonat dhe
TextBox. Pёr tё pasur njё ide mё tё sakt referohuni Fig. 3. 13, ku
paraqitet dizenjimi i formёs pёr kalkulatorin. 
Pёr butonat nga 0 nё 9
Name:  btn dhe me radhё numrat nga 0 nё 9
Text:         Me radhё numrat nga 0 nё 9
Pёr butonin e shumёs Name: cmdShuma dhe Text: +
Pёr butonin e barazimit Name: cmdBarazimi dhe Text: =
Pёr butonin e pastrimit tё TextBox Name: cmdPastron dhe Text: Pastron
Supozojmё se ju doni tё mblidhni 3 me 5. Atёherё klikoni 3, i cili do tё shfaqet nё
TextBox. Pastaj kliko +, pastaj 5, i cili do tё bёjё qё 3 tё zhduket dhe tё shfaqet 5
nё TextBox dhe sё fundi kliko shenjёn e barazimit =. Numri 8 do tё shfaqet nё
TextBox. Pёr tё fshirё numrin 8 kliko butonin Pastro. 
Etapa 2:  Nё etapёn e parё ne krijuam dizenjimin e formёs, le tё shkrujmё
tani kodin e saj. Le tё fillojmё me kodin pёr butanat, pasi ata nuk
bёjnё gjё tjetёr por vetёm transferojnё vlerat nga butonat nё
TextBox. E gjithё puna realizohet me butonat e shumёs dhe
barazimit. Kliko dy herё mbi butonin 0 dhe type kodin si mё
poshtё:
txtShfaq.Text = btnZero.Text     Page 69 of 239
 
Ç’farё ne po themi nё kёtё fjali ёshtё: vlerёn e tekstit pёr btnZero
transferoje nё TextBox. Tё njёjtat veprime kryej dhe pёr butonat e
tjerё deri nё numrin 9. Ki parasysh se ndyshimi i vetёm nё kod
ёshtё ai pёr referimin e emrit, pёr shembull pёr butonin 1 do tё jetё
btnNje dhe kёshtu me radhё. Ështё ide e mirё qё tani tё Start
Debugging dhe tё provoni numrat nga 0 nё 9 se si transferohen nё
TextBox. Megjithatё pasi ti keni provuar tё gjithё numra provoni
dhe njё numёr me dy shifra si psh 15. Vini re se ekziston njё
problem. Kur ju tentoni tё fusni numrin e dytё 5, numri i parё 1
fshihet dhe shfaqet numri i dytё. Ajo qё ne na neoitet ёshtё se çfarё
ndodhet nё TextBox duhet tё qёndrojё aty dhe jo tё zhduket kur
numri i dytё klikohet. Kjo harrihet me kodin e mёposhtёm, ku ne
po japim kodin e plotё vetёm pёr butonin zero. Pasi tё fusni kodin
pёr butonat nga 0 nё 9, testoini ata dhe vёreni se si tani mund tё
fusim dhe mё shumё se njё numёr.  
txtShfaq.Text = txtShfaq.Text & btnZero.Text  
 
Fig. 3. 13 Dizenjimi i formёs pёr kalkulatorin.
 
 Page 70 of 239
 
Deri tani ne kemi deklaruar variabla brenda metodave (local variabla) por tani ne
na nevoiten dy variabla jashtё metodave (public variabla). Mendoni sikur jeni tё
ulur nё njё klasё nё shkollёn tuaj. Njё shoku juaj ndodhet nё klasёn ngjitur dhe ju
doni tё komunikoni me tё. E vetmja mёnyrё pёr ta bёrё kёtё ёshtё njё person i
tretё i cili ka tё drejtёn tё shkojё nё tё dyja klasat. 
Duke patur parasysh kёtё shembull mendoni se si butonat do tё shkёmbejnё
informacionin ndёrmjet tyre.Ç’farё ne na nevoitet ёshtё njё variabёl e deklaruar
global e cila mund tё harrihet nga tё gjitha metodat. Pas rreshtit tё parё
Public Class Form1 
type kodin nё vazhdim ku pёr rreshtin e parё mos u shqetёsoni pasi ёshtё pjesё e
librarisё sё Visual Basic. 
    Inherits System.Windows.Forms.Form
 
    Dim total1 As Integer
    Dim total2 As Integer 
 Ne po krijojmё dy variabla glpbal pasi do ta shihni se do na nevoiten mё poshtё.
Megjithatё nuk ёshtё e thёnё qё ne ta kuptojmё qё nё fillim se na nevoiten dy
variabla, sa herё qё ne tё kemi nevojё pёr njё tё tillё e deklarojmё atё.
Etapa 3:  Nё kёtё etapё do tё shkruajmё kodin pёr butonin shuma. Kur ne
mbledhim numrat sёbashku, ne kemi nevojё qё Visual Basic ta
mbajё mend numrin e parё, sepse kur ne klikojmё shenjёn e
barazimit numri i parё do tё mblidhet me numrin e dytё. Kjo
realizohet nёpёrmjet kodit tё mёposhtёm ku shenja CInt pёrdoret
pёr tё konvertuar nё Integer dhe shenja Val na siguron se numri
brenda kllapave ёshtё njё numёr. Nё rreshtin tjetёr ne po fshim
tekstin pёr ta lёnё TextBox bosh. Pёrveç mёnyrёs duke pёrdorur
metodёn Clear ka dhe njё mёnyrё tjetёr pёr ta realizuar kёtё si:
txtShfaq.Text = “”, e cila tregon se nuk ka asgjё nё TextBox.   
        total1 = CInt(total1 + Val(txtShfaq.Text))
        txtShfaq.Clear()
 Etapa 4:  Tani ju duhet tё jeni nё gjendje jo vetёm ta shpjegoni butonin pёr
barazimin por madje ta shkruani vetё kodin. Megjthatё mё poshtё
ne po e japim kodin pёr butonin e barazimit. Pёr ta kuptuar mё
mirё kёtё fshini nga kodi rreshtin e fundit total1 = 0 dhe vini re se
çfarё ndothё kur mblidhni numrat herёn e dytё.  Page 71 of 239
 
        total2 = CInt(total1 + Val(txtShfaq.Text))
        txtShfaq.Text = CStr(total2)
        total1 = 0  
Pёr butonin Pastron ju duhet ta shkruani vetё kodin. Mё poshtё ne po japim dhe
kodin e plotё tё kёtij programi. 
Public Class Form1
    Inherits System.Windows.Forms.Form
 
    Dim total1 As Integer
    Dim total2 As Integer
 
    Private Sub btnZero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnZero.Click
 
        txtShfaq.Text = txtShfaq.Text & btnZero.Text
    End Sub
 
    Private Sub btnNje_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnNje.Click
 
        txtShfaq.Text = txtShfaq.Text & btnNje.Text
    End Sub
 
    Private Sub btnDy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnDy.Click
        txtShfaq.Text = txtShfaq.Text & btnDy.Text
    End Sub
 
    Private Sub btnTre_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnTre.Click
        txtShfaq.Text = txtShfaq.Text & btnTre.Text
    End Sub
 
    Private Sub btnKater_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnKater.Click
        txtShfaq.Text = txtShfaq.Text & btnKater.Text
    End Sub
 
    Private Sub btnPese_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnPese.Click
        txtShfaq.Text = txtShfaq.Text & btnPese.Text
    End Sub
 
    Private Sub btnGjashte_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnGjashte.Click Page 72 of 239
 
        txtShfaq.Text = txtShfaq.Text & btnGjashte.Text
    End Sub
 
    Private Sub btnShtate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnShtate.Click
        txtShfaq.Text = txtShfaq.Text & btnShtate.Text
    End Sub
 
    Private Sub btnTete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnTete.Click
        txtShfaq.Text = txtShfaq.Text & btnTete.Text
    End Sub
 
    Private Sub btnNente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnNente.Click
        txtShfaq.Text = txtShfaq.Text & btnNente.Text
    End Sub
 
    Private Sub cmdShuma_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdShuma.Click
 
        total1 = CInt(total1 + Val(txtShfaq.Text))
        txtShfaq.Clear()
 
    End Sub
 
    Private Sub cmdBarazim_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdBarazim.Click
 
        total2 = CInt(total1 + Val(txtShfaq.Text))
        txtShfaq.Text = CStr(total2)
        total1 = 0
 
    End Sub
 
    Private Sub cmdPastron_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdPastron.Click
        txtShfaq.Clear()
    End Sub
End Class    
 
3.5 LLOGARITJA E ÇMIMIT PËR NJË DHOMË HOTELI
 Page 73 of 239
 
Menazheri i njё hoteli ju kёrkon ju si studentё tё informatikёs tё llogarisni totalin
e shpenzimeve tё njё klienti i cili qёndron njё natё nё kёtё hotel. Klienti ka disa
shёrbime nga hoteli mbi bazёn e tё cilave atij do ti llogaritet shuma totale qё do tё
paguajё. 
  Pagesa pёr dhomёn nё bazё tё pagesёs pёr çdo natё
  Shёrbimi nё dhomё
  Pagesa pёr telefonin
Nё Fig. 3. 14 tregohet skicimi i formёs pёr tё llogaritur pagesёn totale qё duhet tё
paguajё klienti bazuar nё shёrbimet qё i ofrohen dhe nё çmimin e dhomёs. Pasi tё
studioni formёn nё kёtё figurё ёshtё momenti qё ne tё  krijojmё njё listё me tё
gjitha kontrollet qё ne do tё pёrdorim nё kёtё aplikim. 
Label:   Text Hotel 
Label:   Text Data
Label:   Name lblDataSot              Text fillimisht bosh
Label:   Text Ora
Label:   Name lblOraSot              Text fillimisht bosh Page 74 of 239
 
 
Fig. 3. 14 Vizatimi i aplikimit.
Group box:   Text Informacioni per Dhome           TabIndex 0 (duket 0.0 nё tab)
Label:             Text Netet                                             TabIndex 0 (duket 0.0 nё
tab)
TextBox:        Name txtNetet                                     TabIndex 1 (duket 0.1 nё tab)
Label:             Text Pagesa ne Nate                          TabIndex 2 (duket 0.2 nё tab)
TextBox:        Name txtPagesaNate                          TabIndex 3 (duket 0.3 nё tab) Page 75 of 239
 
Group box:    Text Pagesa Shtese                             TabIndex 1 
Label:             Text Sherbim Dhome                          TabIndex 0 (duket 1.0 nё
tab)
TextBox:        Name txtSherbimDhome                   TabIndex 1 (duket 1.1 nё tab)
Label:             Text Telefon                                          TabIndex 2 (duket 1.2 nё
tab)
TextBox:        Name txtTelefon                                  TabIndex 3 (duket 1.3 nё
tab)
Group box:    Text Totali                                             
Label:              Text Pagesa per Dhome                     
Label:              Name lblPagesaDhome                                  
Label:             Text Pagesa Shtesё
Label:             Name lblShtoPagesen
Label:             Text Shuma
Label:             lblShuma                                                 
Label:             Text Taks
Label:             Name lblTaks                                          
Label:             Text Totali
Label:             Name lblTotali                                          
Button:          btnLlogaritPagesen                              Text L&logarit Pagesen
TabIndex 2
Button:          btnPastron                                            Text P&astron
TabIndex 3
Button:          btnMbyll                                                 Text M&byll
TabIndex 4
Nё Fig. 3. 15 jepet flowchart pёr metodёn btnLlogarit_Click. Nё kёtё figurё jepet
dhe njё simbol me shenjёn e A dhe me njё rreth i cili pёrdoret pёr tё treguar se Page 76 of 239
 
ёshtё vazhdim i flowchart por pёr ta treguar tё gjithё figurёn nё njё faqe pёrdoret
njё simbol i tillё nё Microsoft Visio. Ky simbol quhet connector symbol.
Studioni flowchart duke ju referuar dhe Fig. 3. 14. 
 
Fillon
Llogarit pagesen e
Dhomes.
Shumezon # e
neteve me
pagesen per nate.
Ruan rezultatin ne
decPagesDhom
Kopjon vleren e
decPagesDhom ne
lblPagesDhom.Text
Llogarit Pagesat
Shtese. Shton
sherbimin ne
dhome, telefon
dhe ruan rezultatin
ne decShtoPages
Kopjo vleren e
decShtoPages ne
lblShtoPages.Text
A
Llogarit Taksen.
Shumezon
decShum me
decTAKS dhe ruan
rezultatin ne
decTaks
Kopjon vleren e
decTaks ne
lblTaks.Text
Llogarit pagesen
totale. Shton
decShuma dhe
decTaks. Ruan
rezultatin ne
decTotal
Kopjon vleren e
decTotal.Text.
Mbaron
A
 
Fig. 3. 15 Flowchart pёr btnLlogarit_Click.
 Page 77 of 239
 
Fillon
Pastron
Informacionin.
Ruan nje string
boshe ne
txtNetet.Text dhe
txtPagesNate.Text
Pastron Pagesat
shtese. Ruan nje string
boshe ne
txtSherbimDhom.Text
dhe  txtTelefon.Text.
Pastron komplet
fushen. Ruan nje string
boshe
lblPagesaDhom.Text
dhe lblShtoPages.Text.
A
Ruan datat ne
lblDataSot.Text
dhe lblOraSot.Text
Kthen fokusin ne
txtNetet kontrol.
Mbaron
A
 
Fig. 3. 16 Flowchart pёr btnMbyll_Click.
 
 
Fig. 3. 17 Flowchart pёr btnMbyll_Click. Page 78 of 239
 
Etapa 1: Tani qё ne kemi krijuar tё gjithё tablonё e aplikimit tonё, ne jemi gati tё
krijojmё programin. Krijo njё projekt tё quajtur Hoteli. Krijo njё forёm dhe
emёrto tё gjitha kontrollet sipas vlerave qё i treguam mё sipёr. Forma e krijuar do
tё duket si fig.
Fig. 3. 18 Forma pёr aplikimin Hoteli.
 
 
Etapa 2: Kliko dy herё mbi çfarёdo pjese tё formёs, e cila nuk ёshtё e zёnё prej
ndonjё kontrolli. Kodi duhet tё hapet me njё proçedurё pёr Form1_Load. Kjo
ёshtё njё llojё proçedure e cila ekzekutohet automatikisht çdo herё qё forma
shfaqet. Nё rastin tonё çdo herё qё ne do tё Start Debugging, nё label pёr datёn
dhe orёn do tё shfaqet data dhe ora nё atё moment. Kjo realizohet nёpёrmjet kodit
tё mёposhtёm ku data dhe ora merren nga sistemi (komjuteri) dhe shfaqen nё
label pёrkatёse.
        'Merr daten e sotme nga sistemi dhe e shfaq
        lblDataSot.Text = FormatDateTime(Now, DateFormat.LongDate)
        'Merr oren nga sistemi dhe e shfaq
        lblOraSot.Text = FormatDateTime(Now, DateFormat.LongTime)     
Etapa 3: Kliko dy herё mbi butonin Llogaritja Pageses dhe kompleto proçedurёn
sipas kodit tё mёposhtёm.  Page 79 of 239
 
        'Deklaro variablat per llogaritjet
        Dim decPagesaDhom As Decimal
        Dim decShtoPages As Decimal
        Dim decShuma As Decimal
        Dim decTaks As Decimal
        Dim decTotal As Decimal
        Const decTAKS_PER As Decimal = 0.1D
 
        Try
            'Llogarit dhe shfaq pagesen e dhomes
            decPagesaDhom = CDec(txtNetet.Text) * CDec(txtPagesaNate.Text)
            lblPagesaDhom.Text = FormatCurrency(decPagesaDhom)
        Catch ex As Exception
            MessageBox.Show("Netet dhe Pagesa ne Nate duhet te jene numra", _
            "Gabim")
        End Try
 
        Try
            'Llogarit dhe shfaq pagesen shtese
            decShtoPages = CDec(txtSherbimeDhome.Text) + CDec(txtTelefon.Text)
            lblShtoPagesen.Text = FormatCurrency(decShtoPages)
        Catch ex As Exception
            MessageBox.Show("Sherbim Dhome dhe Telefon duhet te jen numra", _
            "Gabim")
        End Try
 
        'Llogarit dhe shfaq shumen
        decShuma = decPagesaDhom + decShtoPages
        lblShuma.Text = FormatCurrency(decShuma)
 
        'Llogarit dhe shfaq taks
        decTaks = decShuma * decTAKS_PER
        lblTaks.Text = FormatCurrency(decTaks)
 
        'Llogarti dhe shfaq totalin
        decTotal = decShuma + decTaks
        lblTotali.Text = FormatCurrency(decTotal)
Nё kёtё proçedurё ne po pёrdorim Exception handling, e cila pёrdoret pёr tё
kёrkuar nёse pёrdorusi nuk do tё fusi njё vlerё nё ndonjё prej TextBox.
Supozojmё se pёrdorusi harron tё fusi vlerёn pёr Netet ose Pagesa ne Nate.
Atёherё blloku i parё Try dhe Catch ex As Exception do tё shfaqi mesazhin si nё
Fig. 3. 19. Ndёrsa pёr bllokun e dytё, pra nёse pёrdorusi do tё harrojё ndonjё apo
tё dyja vlerat pёr Sherbim Dhome apo Telefon do tё shfaqet mesazhi nё Fig. 3.
20.  Page 80 of 239
 
Etapa 4: Kliko dy herё mbi butonin Pastron. Kompleto proçedurёn sipas kodit tё
mёposhtёm. Ç’farё ne po bёjmё nё kёtё kodё ёshtё se ne po fshim vlerat nё
TextBox dhe nё Label. Tregoni kujdes nё mёnyrёn se si kjo realizohet pёr
TextBox dhe pёr Label. Nё fund tё kёsaj proçedure perdoret: txtNetet.Focus() e
cila nuk bёnё gjё tjetёr por vetёm sa kthen kursorin nё fushёn e parё. Ju tashmё
jeni tё aftё tё shkruani proçedurёn pёr butonin Mbyll. Pasi ta keni ruajtur
programin, Start Debugging dhe pёr ta testuar programin tuaj pёrdorni tё njёjtat
vlera me ato tё cilat ne kemi pёrdorur nё Fig. 3. 21. Nёse do tё hasni vёshtirёsi
dhe programi nuk do tё kompilet, ne po e japim tё plotё kodin nё fund tё kёtij
kapitulli.  
 
Fig. 3. 19 Message box i shfaqur nga blloku i parё exception handler.
 
 
 
 
 
 Page 81 of 239
 
Fig. 3. 20 Message box sipas exeption handler tё dytё.
 
 
Fig. 3. 21 Aplikimi Hoteli nё Start Debugging.
 Page 82 of 239
 
 
Kodi i plotё pёr projektin Hoteli.
Public Class Form1
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
 
        'Merr daten e sotme nga sistemi dhe e shfaq
        lblDataSot.Text = FormatDateTime(Now, DateFormat.LongDate)
        'Merr oren nga sistemi dhe e shfaq
        lblOraSot.Text = FormatDateTime(Now, DateFormat.LongTime)
    End Sub
 
    Private Sub btnLlogaritPagesen_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnLlogaritPagesen.Click
 
        'Deklaro variablat per llogaritjet
        Dim decPagesaDhom As Decimal
        Dim decShtoPages As Decimal
        Dim decShuma As Decimal
        Dim decTaks As Decimal
        Dim decTotal As Decimal
        Const decTAKS_PER As Decimal = 0.1D
 
        Try
            'Llogarit dhe shfaq pagesen e dhomes
            decPagesaDhom = CDec(txtNetet.Text) * CDec(txtPagesaNate.Text)
            lblPagesaDhom.Text = FormatCurrency(decPagesaDhom)
        Catch ex As Exception
            MessageBox.Show("Netet dhe Pagesa ne Nate duhet te jene numra", _
            "Gabim")
        End Try
 
        Try
            'Llogarit dhe shfaq pagesen shtese
            decShtoPages = CDec(txtSherbimeDhome.Text) + CDec(txtTelefon.Text)
            lblShtoPagesen.Text = FormatCurrency(decShtoPages)
        Catch ex As Exception
            MessageBox.Show("Sherbim Dhome dhe Telefon duhet te jene numra", _
            "Gabim")
        End Try
 
        'Llogarit dhe shfaq shumen
        decShuma = decPagesaDhom + decShtoPages
        lblShuma.Text = FormatCurrency(decShuma) Page 83 of 239
 
 
        'Llogarit dhe shfaq taks
        decTaks = decShuma * decTAKS_PER
        lblTaks.Text = FormatCurrency(decTaks)
 
        'Llogarti dhe shfaq totalin
        decTotal = decShuma + decTaks
        lblTotali.Text = FormatCurrency(decTotal)
    End Sub
 
    Private Sub btnPastron_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnPastron.Click
 
        'Pastron fushen per informacionin per dhome
        txtNetet.Clear()
        txtPagesaNate.Clear()
        'Pastron fushen pagesa shtese
        txtSherbimeDhome.Clear()
        txtTelefon.Clear()
 
        'Pastron fushen pagesa totale
        lblPagesaDhom.Text = String.Empty
        lblShtoPagesen.Text = String.Empty
        lblShuma.Text = String.Empty
        lblTaks.Text = String.Empty
        lblTotali.Text = String.Empty
 
        'Merr daten nga systemi dhe e shfaq.
        lblDataSot.Text = FormatDateTime(Now, DateFormat.LongDate)
        'Merr oren nga sistemi dhe e shfaq.
        lblOraSot.Text = FormatDateTime(Now, DateFormat.LongTime)
 
        'Kthen kursorin ne Label lblNetet, e cila eshte e para
        txtNetet.Focus()
 
    End Sub
 
    Private Sub btnMbyll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnMbyll.Click
        'Perfundon aplikimin duke mbyllur window.
        Me.Close()
    End Sub
End Class
 
 Page 84 of 239
 
Ushtrime dhe Problema
 
3.1  Krijo njё program ku tё kryeni veprimet aritmetike nё dy mёnyra:
duke pёrdorur Message Box dhe TextBox. 1) 12 + 12, 2) 15 – 6, 3)
10 * 2 / 5. Printo kodin dhe programin nё Start Debugging. 
3.2  Pasi tё krijoni njё program ku tё shfaqet emri dhe mbiemri juaj me
hapёsirё ndёrmjet tyre dhe pa hapёsirё ndёrmjet tyre, printoni
kodin dhe programin kur ёshtё nё Start Debugging. 
3.3  Krijo njё program ku Start Debugging tё jetё i ngjashёm me Fig. 3.
6 por nё vend tё Message Box tё pёrdorni njё TextBox. 
3.4  Krijo njё program tё ngjashёm me atё tё problemёs 3.3, ku i pari tё
shfaqet emri dhe i dyti tё shfaqet mbiemri.   
3.5  Krijoni njё program ku tё llogarisni shumёn: 23.7 + 7 dhe rezultati
tё shfaqet si Integer.
3.6  Nё aplikimin Hoteli shto pёr Pagesa Shtese dhe njё tjetёr shёrbim:
Taksi. Testojeni programin dhe sigurohuni qё vlerat e shfaqura
janё tё saktat.   
 Page 85 of 239
Make a Free Website with Yola.