f~wgKv 3
hviv wfRyq¨vj †ewmK WU †b‡Ui †cÖvMÖvwgs RM‡Z cÖ‡ek Ki‡Z Pvb Zv‡`i Rb¨
wfRyq¨vj †ewmK WU †bU
nv‡Z Lwo
gviæd Avn‡g`
wmm‡UK cvewj‡KkÝ
evsjvevRvi eyK GÛ Kw¤úDUvi Kg‡c ø·
38/3 evsjvevRvi, XvKv -1100|
†dvb t 7112406, 0171346538,
I‡qe mvBU : www.systechdigital.com
4 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
cÖKvkK t cwiPvjK
wmm‡UK cvewj‡KkÝ
†jLK t gviæd Avn‡g`
B‡gBj t [email protected]
cÖ_g cÖKvk t gvP© 2004 Bs
cÖ”Q` wWRvBb t gviæd Avn‡g`
eY©web¨vm I
A½m¾v t gviæd Avn‡g`
g~j¨ t 45 UvKv
Visual Basic Dot Net Hate Kharee by Maruf Ahmed, Published by Director :
Systech Publications, 38/3 Banglabazar, Dhaka-1100.
e-mail : [email protected] , Price : TK – 45.
f~wgKv 5
hv‡`i gnvb AvZ¥ Z¨v‡M AvR evsjv
fvlvq iPbv Ki‡Z cviwQ Avgvi GB
eBmg~n, †mme fvlv ˆmwbK‡`i cÖwZ
DrmM© Kijvg Avgvi GB eBwU|
6 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
f~wgKv 7
wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
m~wPcÎ
Aa¨vq 1 t f~wgKv
wfRyq¨vj †ewmK WU †bU (wfRyq¨vj †ewmK 7.0) ................................ 8
wfRyq¨vj †ewmK WU †bU G ms‡hvwRZ bZzb wdPvimg~n ....................... 10
†WUv UvB‡c cwieZ©b ................................................................. 10
†fwiqvej wWK¬v‡ii †ÿ‡Î ........................................................... 13
wfRyq¨vj †ewmK 7.0/WU †b‡U †Z wmb‡U· Gi cwieZ©bmg~n ................ 14
Acv‡iUi ................................................................................ 16
†cÖvcvwU©R ................................................................................ 17
DBRvi wWdvBb&W UvBc .............................................................. 18
K‡›Uªvj †d¬v ............................................................................. 18
A¨vwcø‡Kkb UvBc ...................................................................... 20
†WUv A¨v‡·m ........................................................................... 20
wWevwMs .................................................................................. 21
AviI wKQy cwieZ©b ................................................................... 21
wfRyq¨vj †ewmK Pvjv‡bvi Rb¨ wm‡÷g †hvM¨Zv ................................. 22
Aa¨vq 2 t Bb÷‡jkb
wfRyq¨vj †ewmK Bb÷‡jkb cÖwµqv ............................................... 26
Aa¨vq 3 t nv‡Z Lwo
wfRyq¨vj †ewmK WU †bU PvjyKiY ................................................. 34
wj¼ †j‡ej (Link Label) ...........................................................40
†WU UvBg wcKvi (DateTimePicker) ........................................... 41
8 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
†Wv‡gBb Avc WvDb (DomainUpDown) ....................................... 41
wbD‡gwiK Avc WvDb (NumericUpDown) .................................... 42
†cR †mU Avc WvqvjM (PageSetupDialog) .................................. 42
wcÖ›U wcÖwfD K‡›Uªvj (PrintPreviewControl) .................................... 42
†bvwUdvB AvBKb (NotifyIcon) ................................................... 43
dg© ....................................................................................... 44
Uzj e· .................................................................................45
mwjDkb G·‡cøvivi .................................................................. 46
†KvW DB‡Ûv ............................................................................ 46
Aa¨vq 4 t D`vniY
GKwU mvaviY DB‡ÛvR dg© ˆZwi ................................................... 52
DB‡ÛvR d‡g©i eW©vi cwieZ©b ......................................................54
A`„k¨ DB‡ÛvR dg© ˆZwii Rb¨.................................................... 57
UªvÝcv‡i›U DB‡ÛvR dg© ˆZwi ....................................................... 60
d›U WvqvjM K‡¤úv‡b‡›Ui gva¨‡g d›Uwj÷ cÖ`k©b ............................. 63
cvmIqvW© †U·U e· ˆZwi ........................................................... 66
wfwe WU †b‡U AviI wKQz D`vniY ................................................ 70
B‡gR d‡g©U KbfvU© Kivi Rb¨ .................................................... 70
wfwe WU †b‡U GDI+ eªvk wb‡q KvR ............................................... 71
†WUv wiW Kivi Rb¨ OleDbDataReader e¨envi .............................. 75
wfwe WU †b‡U †_ªwWs D`vniY ...................................................... 77
Kvjvi †MÖwW‡q›U ˆZwi ............................................................... 78
f~wgKv 9
wfRyq¨vj †ewmK WU †bU
f~wgKv
10 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
wfRyq¨vj †ewmK WU †bU (wfRyq¨vj †ewmK 7.0)
wfRyq¨vj †ewmK - wfRyq¨vj †cÖvMÖvwgs RM‡Z RbwcÖq GKwU bvg| ïay e¨env‡i mnR‡eva¨Zvi
Kvi‡bB bq - Gi Kvh©cwiwai wekvjZv, Ab¨vb¨ j¨v½y‡q‡Ri wi‡mvm© e¨env‡ii myweav BZ¨vw`
†ek wKQy Kvi‡Y wfRyq¨vj †ewmK bexb cÖexb mKj ai‡bi †cÖvMÖvgv‡ii Kv‡QB GKwU RbwcÖq
Uzj n‡q `vwo‡q‡Q|
1991 mv‡j hLb cÖ_g wfRyq¨vj †ewm‡Ki 1.0 fvm©bwU cÖKvwkZ nq - ZLb †_‡KB
(RAD) -wfwËK †W‡fjc‡g›U †gUv‡dvi (metaphor) DB‡ÛvR A¨vwc ø‡Kkb Dbœq‡b
AvwacZ¨ we¯Ívi ïiæ K‡i| wKš‘ †h‡nZz Avgiv ax‡i ax‡i B›Uvi‡bUwfwËK Gwc ø‡Kkb Dbœq‡b
c~Y©Zvi w`‡K G‡Mvw”Q †m‡nZz DB‡ÛvR Ges B›Uvi‡bU Gwc ø‡Kkb Dbœq‡bi Rb¨ Avgv‡`i
cÖ‡qvRb n‡q c‡o AviI AwaK Kg©ÿg †cÖvMÖvwgs g‡W‡ji|
cieZ©x‡Z B›Uvi‡bU md&U&Iq¨vi Dbœqb‡K GKwU eo LvZ wn‡m‡e MY¨ K‡i gvB‡µvmd&U&
Zv‡`i Gw±f G· †UK‡bvjwRi g~j A_© Ges Gi †UKwbK¨vj wbg©vb‰kjx/AvwK©‡UKPvi-G
cwieZ©b Av‡bb| Avevi K¬vB›U mvBW Dbœq‡bi Rb¨ gvB‡µvmd&U& wfRyq¨vj †ewm‡Ki GKwU
jvBUvi/mswÿß fvm©b cÖKvk K‡i hv wfwe w¯ŒÞ (VB Script) bv‡gB cwiwPZ| †mB mv‡_
mv‡_ gvB‡µvmd&U& wfRyq¨vj †ewm‡KiI cÖf~Z Dbœqb mvab K‡i hv‡Z K‡i GwU †W‡fjc‡g›U
Uzj wn‡m‡e kxl©¯’vbxq MY¨ n‡Z cv‡i|
Dbœqb avivi GB cÖev‡n Gi ci G‡jv Rvfv (Java) Ges Gw±f mvfv©i †cR (ASP)
Dbœq‡bi Rb¨ Avc‡W‡UW Uzj| GKB mg‡q gvB‡µvmd&U& KvR KiwQj DB‡ÛvR Ges
B›Uvi‡bU md&U&Iq¨vi Dbœq‡bi Rb¨ GKwU wfbœag©x †cÖvMÖvwgs g‡W‡ji| Avi ZviB djvdj
f~wgKv 11
WU †bU (.NET) †d«gIqvK©Õi - hv RyjvB 2000-G gvB‡µvmd&U& cÖ‡dkbvj †W‡fjcvi&m
Kbdv‡iÝ Aegy³ Kiv nq|
gvB‡µvmd&U& WU †bU c øvUd‡g©i wiwj‡Ri mv‡_ mv‡_ wfRyq¨vj †ewmK GKwU c~Y© Ae‡R±
Awi‡q‡›UW †cÖvMÖvwgs j¨v½y‡q‡R cÖZ¨veZ©b K‡i‡Q| nu¨v, GB WU †bU †dgIqvK© - wfRyq¨vj
†cÖvMÖvwgs-G G‡b‡Q GK wekvj cwieZ©b| WU †bU †d«gIqvK© g~jZ A¨vwcø‡Kkb Dbœq‡b
GKwU mgwš^Z c øvUdg© †hLv‡b B›Uvi‡bU Gwc ø‡Kkb Dbœq‡bi cvkvcvwk DB‡ÛvR c øvUd‡g©i
Rb¨I c~Y© wdPvi mg„× Gwc ø‡Kkb Dbœqb Kiv hv‡e| DbœqbKvixMY cÖvqB e¨envi K‡ib Ggb
wKQy Kvh©m¤úv`‡bi Rb¨ wekvj GKwU K¬vm †d«gIqvK© mshy³ K‡i‡Q GB WU †bU †d«g
Iqv‡K©| AviI †h K_v¸‡jv bv ej‡jB bq, Zv n‡jv GB WU †bU (Dot Net) †d«gIqvK©
wmwKDwiwU ev wbivcËv, µm-cøvUdg© KwgDwb‡Kkb, wi‡mvm© g¨v‡bR‡g›U Ges cÖmvib‡hvM¨
GKwU mgwš^Z mvwf©m cÖ`vb K‡i|
†h‡nZz .NET †d«gIqvK©wU‡K fwel¨‡Zi DB‡ÛvR Gwc ø‡Kkb Dbœqb Ges B›Uvi‡bU
Gwcø‡K‡kb ˆZwi‡K cÖvavb¨ w`‡q ˆZwi Kiv n‡q‡Q| †h Kvi‡bB Gi cwieZ©b Avb‡Z n‡q‡Q
A‡bK Mfxi †_‡K| wfRyq¨vj †ewmK WU †bU-Gi †ÿ‡ÎI Avcwb †mUvB jÿ¨ Ki‡eb|
†Pv‡L co‡e Gi MVbMZ †ek wKQy cv_©K¨|
wfRyq¨vj †ewm‡Ki PjwZ fvm©‡b †h mKj cwieZ©b Avbv n‡q‡Q Ges bZzb wdPvi ms‡hvRb
Kiv n‡q‡Q Zvi GKwU wPÎ Zz‡j aivi †Póv KiwQ|
wfRyq¨vj †ewmK 6.0 Avi 7.0 Gi g‡a¨ cv_©K¨ †h †KejgvÎ wdPvi ev ÷ªvKPv‡i, Zv bq, G
cv_ ©K¨ †KvwWsÕi †ÿ‡Î AviI †ewk jÿ¨Yxq| ej‡Z cv‡ib gvB‡µvmd&U& wfRyq¨vj ÷zwWI
12 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
KZ…©cÿ wfRyq¨vj †ewmKÕi †KvwWs ÷ªvKPv‡iI cwieZ©b G‡b‡Q †ek| Z‡e hZ wKQyB †nvK
bv ‡Kb mnR‡eva¨Zv Avi mij MV‡bi Rb¨ wfRyq¨vj †ewmK AvRI wfRyq¨vj †cÖvMÖvwgs
fvlv¸‡jvi g‡a¨ kxl© ¯’v‡b Ae¯’vb Ki‡Q| myZivs f‡qi wKQyB †bB| †Zv ïiæ Kiv hvK|
wfRyq¨vj †ewmK WU †bU G ms‡hvwRZ bZzb wdPvimg~n
Bb‡nwi‡UÝ (Inheritance)t
wfRyq¨vj †ewmK WU †bU Bb‡nwi‡UÝ mv‡cvU© K‡i| Bb‡nwi‡UÝ n‡jv Ggb GK ai‡bi K¬vm
wWdvBb Kivi cÖwµqv hv derived K¬vmmg~‡ni †ewmm wn‡m‡e KvR K‡i| wfRyq¨vj †ewmK
WU †b‡U ˆZwi mKj K¬vmB evB wWdë Bb‡nwiU¨vej|
gvwë‡_ªwWs (Multithreading) t
wfRyq¨vj †ewmK WU †bU e¨envi K‡i Avcwb gvwë‡_ªwWs †cÖvMÖvg (GKvwaK KvR ¯^vaxbfv‡e
m¤úbœ Ki‡Z cv‡i Ggb †cÖvMÖvg) ˆZwi Ki‡Z cvi‡eb| ¯‹¨vjvej A¨vwc ø‡Kkb ˆZwi‡Z
gvwë‡_ªwWs AZ¨vek¨Kxq †Kbbv IqvK©‡jvW e„w×i mv‡_ mv‡_ Avcwb G‡Z †_ªW mshy³ Ki‡Z
cvi‡eb|
A¨vwUªweDU (Attributes) t
A¨vwUªweDUmg~n Avcbvi †cÖvMÖvg Dcv`vbmg~‡n AwZwi³ Bbdi‡gkb mieiv‡ni my‡hvM †`q|
D`vniY¯iƒc XML I‡qe mvwf©‡m e¨eüZ †Kvb GKwU K¬vm Zvi †Kvb ‡g_WwU G·‡cvR
Ki‡e Zv Avcwb Zv GKwU A¨vwUªweDU e¨envi K‡i wba©viY K‡i w`‡Z cv‡ib|
Ifvi‡jvwWs (Overloading)t
‡h mg¯Í †cÖvcvwU©, †g_W Ges cÖwmwWD‡ii bvg GK wKš‘ †WUv UvBc Avjv`v †m mg¯ Í
†cÖvcvwU©, †g_W Ges cÖwmwWDi wWdvBb Kivi ÿgZv‡K Ifvi‡jvwWs ejv nq|
MÖvwd· t
DB‡ÛvR dg© -G mshy³ n‡q‡Q GDI+ , hv †MBg ev ixP MÖvwd·mg„× cwi‡ek ˆZwi‡Z †ek
Kvh©Kix|
†WUv UvB‡c cwieZ©b t
†fwi‡q›U mv‡cvU© K‡i bv t
wfRyq¨vj †ewmK 6.0-G f¨vwi‡q›U (Variant) wQj Gi wWdë BDwbfv‡m©j †WUv UvBc|
wKš‘ wfRyq¨vj †ewmK WU †b‡U Ae‡R± (Object) bvgK †WUv UvB‡ci gva¨‡g G‡K wi‡c øm
Kiv n‡q‡Q| †hLv‡b (Variant) †WUv UvB‡ci wWdë †fjy¨ wQj Empty †mLv‡b GB
Object †WUv UvB‡ci wWdë †fjy¨ n‡”Q Nothing |
f~wgKv 13
Dim var1 as Variant
cwieZ©b n‡q n‡q‡Q t
Dim var1 as Object
Kv‡iwÝ mv‡cvU© K‡i bv t
wfwe WU †b‡U Kv‡iwÝ †WUv UvBc‡K †Wwm‡gj (Decimal)-G cwieZ©b Kiv n‡q‡Q| †h‡nZz
†Wm‡gj-B ivDwÛs bv¤^v‡ii Rb¨ h_vh_ †m‡nZz Kv‡iwÝ msµvš Í Acv‡ikb n¨v‡Ûwjs-Gi
Rb¨ †Wwm‡gj †WUv UvBc ˆZwi Kiv n‡q‡Q GB wfwe WU †b‡U| Kv‡iwÝ g~jZ GKwU 64
we‡Ui bv¤^vi hvi Wvb w`‡Ki 4wU wWwRU e¨eüZ †Wwm‡gj ev `kwgK Dc¯’vc‡bi Rb¨| Avi
GB bZzb †Wwm‡gj(Decimal) †WUv UvBcwU g~jZ 96 we‡Ui mvBb&W B‡›URvi (Singed
Integer), hvi 28 wU wWwRU `kwgK ev †Wwm‡gj cÖKv‡k e¨envi Kiv hvq|
Dim X as Currency
cwieZ©b n‡q n‡q‡Q t
Dim X as Decimal
B‡›URvi (Integer) Ges js -G cwieZ©b t
wfRyq¨vj †ewmK 6.0-G B‡›URvi †WUv UvBcwU wQj GKwU 16 we‡Ui bv¤^vi, hv -32,768
†_‡K 32,767 ch©š Í gvb aviY Ki‡Z cvi‡Zv| wfwe WU †b‡U GB B‡›URvi †WUv UvBc‡K
kU© (Short))†WUv UvB‡ci gva¨‡g wi‡c øm Kiv n‡q‡Q| GwU GKwU 32 we‡Ui †WUv UvBc|
Avi B‡›URvi †WUv UvBc‡K ewa©Z K‡i Gi gvb avi‡Yi †iÄ -2,147,483,648 †_‡K -
2,147,483,647 Kiv n‡q‡Q| Acic‡ÿ js (Long) †WUv UvBc GLb †_‡K GKwU 64
we‡Ui bv¤^vi| ZvB wfRyq¨vj †ewm‡Ki G fvm©‡b 32 weU Acv‡ik‡bi †ÿ‡Î B‡b&Rvi †WUv
UvBc †ek Kvh©Ki|
Dim X as Integer Dim X as Long
cwieZ©b n‡q n‡q‡Q t
Dim X as Short Dim X as Integer
†WU (Date) †WUv UvB‡c cwieZ©b t
wfRyq¨vj †ewmK WU †b‡U †WU (Date) †WUv UvBc GKwU 64 weU B‡›URvi, hv wfwe 6.0
†Z GKwU 64 weU Wej bv¤^vi wn‡m‡e wQj| Z‡e GB †WU (Date) Ges Wej (Double)
†WUv UvBc Kbfvm©b-Gi Rb¨ Avcbv‡K ToOADate Ges FromOADate dvskbmg~n
e¨envi Ki‡Z n‡e|
Dim X as Double
cwieZ©b n‡q n‡q‡Q t
Dim X as Double, Y as Date Y = X.ToOADate
14 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
DefType mv‡cvU© K‡i bvt
wfRyq¨vj †ewmK WU †b‡U DefType †÷U‡g›U (hv †WUv UvBr UvBc D‡j øL QvovB
†NvlYvK…Z †fwiq¨vejmg~‡ni Rb¨ GKwU wWdë UvBc cÖ`vb Ki‡Zv)-wU Avi mv‡cvU© K‡i
bv|
VarPtr, StrPtr, ObjPtr mv‡cvU© K‡i bvt
wfRyq¨vj †ewmK WU †b‡U VarPtr, StrPtr, ObjPtr GB dvskbmg~n mv‡cvU© K‡i bv| GB
dvskmg~n g~jZ GwcAvB Kjmg~‡n e¨eüZ †fwiqvej¸‡jvi B‡›URvi A¨v‡Wªm wiUvb© K‡i|
wֻs (String) t
wfRyq¨vj †ewmK WU †bU wd·W †jš’ w÷ªs mv‡cvU© K‡i bv|
wb‡Pi †Uwe‡j wfRyq¨vj †ewmK WU †bU ÷zwWI KZ…©K mv‡cvU©KZ… †WUv UvBc cÖ`Ë
n‡jv| †mB mv‡_ G‡`i Kgb j¨v½y‡qR ivbUvBg UvBcmg~n, bwgbvj †÷v‡iR
A¨v‡jv‡Kkb Ges Zv‡`i †fjy¨ †iÄ cÖ`Ë n‡jv t
Visual
Basic
type
Common
language runtime
type structure
Nominal
storage
allocation
Value range
Boolean System.Boolean 2 bytes True or False.
Byte System.Byte 1 byte 0 through 255 (unsigned).
Char System.Char 2 bytes 0 through 65535 (unsigned).
Date System.DateTime 8 bytes 0:00:00 on January 1, 0001
through 11:59:59 PM on
December 31, 9999.
Decimal System.Decimal 16 bytes 0 through +/-
79,228,162,514,264,337,593,543,
950,335 with no decimal point;
0 through +/-
7.92281625142643375935439503
35 with 28 places to the right of
the decimal; smallest nonzero
number is
+/-
0.00000000000000000000000000
01 (+/-1E-28).
Double
(double-
precision
floating-
System.Double 8 bytes -1.79769313486231570E+308
through
-4.94065645841246544E-324 for
negative values;
f~wgKv 15
point) 4.94065645841246544E-324
through
1.79769313486231570E+308 for
positive values.
Integer System.Int32 4 bytes -2,147,483,648 through
2,147,483,647.
Long
(long
integer)
System.Int64 8 bytes -9,223,372,036,854,775,808
through
9,223,372,036,854,775,807.
Object System.Object
(class)
4 bytes Any type can be stored in a
variable of type Object.
Short System.Int16 2 bytes -32,768 through 32,767.
Single
(single-
precision
floating-
point)
System.Single 4 bytes -3.4028235E+38 through -
1.401298E-45 for negative
values; 1.401298E-45 through
3.4028235E+38 for positive
values.
String
(variable-
length)
System.String
(class)
Depends on
implementin
g platform
0 to approximately 2 billion
Unicode characters.
User-
Defined
Type
(structure)
(inherits from
System.ValueType)
Depends on
implementin
g platform
Each member of the structure has
a range determined by its data
type and independent of the
ranges of the other members.
†fwiqvej wWK¬v‡ii †ÿ‡Î t
‡fwiqvej wWK¬v‡ii †ÿ‡Î wfwe 6.0 †Z GKwU eo ai‡bi mgm¨v wQj| d‡j †cÖvMÖvgviMY
cÖvqB mgm¨vq co‡Zb| Pjyb †`Lv hvK mgm¨vwU wK wQjt
wfRyq¨vj †ewmK 6.0 †Z †jLv wb‡Pi †KvwWsUzKz jÿ¨ Kiæb t
Dim x,y as integer
Dc‡ii D`vniYwU‡Z †NvlYvK…Z jv‡bi gva¨‡g †fwiq¨vej `y'†Uv‡KB †MÖvMÖvgviMY B‡›URvi
wn‡m‡e †NvlYv Ki‡Z e¨envi K‡i _v‡Kb| wKš‘ wfRyq¨vj †ewmK 6.0 Gi x †fwiq¨vejwU‡K
variant Ges y †fwiq¨vejwU‡K integer wn‡m‡e MÖvn¨ K‡i| hv †cÖvMÖvgv‡ii cÖZ¨vkvi mv‡_
m¤ú~b© Am½wZc~Y©| wfRyq¨vj †ewmK WU †bU GB mgm¨vi h_v_© mgvavb w`‡q‡Q †hLv‡b
DcwiD³ †KvwWsÕi gva¨‡gB Dfq †fwiq¨vejwU‡K B‡›URvi wn‡m‡e MÖvn¨ K‡i| ïay GUzKzB
bq, wfwe WU †bU(VB.NET) †fwiq¨vej †NvlYvi mv‡_ mv‡_ mv‡_B Gi Bwbwkqvj
(initial) †fjy¨ cÖ`v‡bi myweavI w`‡q _v‡K| wb‡Pi †÷U‡g›UwU jÿ¨ Kiæb|
16 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Dim str1 as string="hello"
wfRyq¨vj †ewmK ixW Abwj †fwiq¨vej †Nvlbvi myweav w`‡q‡Q Zvi GB 7.0 fvm©‡b|
Kb÷¨v›U Gi mv‡_ Gi cv_©K¨ n‡jv GwU †Kvb Bwbwk‡qjvB‡Rkb (initialization) QvovB
†NvlYv Kiv hvq| wKš‘ hLbB G‡Z GKwU gvb wba©viY Kiv n‡e, ZLb †_‡K GwU †KejgvÎ
H gvbwU Dc¯’vcb Ki‡e, G‡Z †Kvb cwieZ©b Kiv hv‡e bv| wb‡Pi D`vniYwU †`Lyb t
'no initialization here
Dim readonly x as integer
'in later code
x=100
'now x can't be changed
x=200 '***** error *********
A¨v‡i (Arrays) t
wfRyq¨vj †ewmK 6.0 fvm©‡b A¨v‡i †NvlYvi †ÿ‡Î Avcbv‡K g¨vbyqvwj †cÖvMÖvwgs K‡i Gi
†jvqvi evDÛ(lower bound) Ges Avcvi evDÛ (upper bound) mg~n e‡j w`‡Z n‡Zv| wfwe
WU †bU-G hw`I A¨v‡ii †jvqvi evDÛ k~b¨ (0) | Avcwb hw` wb‡Pi g‡Zv K‡i A¨v‡i
wWdvBb K‡ib Z‡e GwU cÖK…Z c‡ÿ
Dim aStates(100) as String
101 wU Gwj‡g›U ˆZwi Ki‡e, hvi †jvqvi evDÛ ïb¨ (0) Ges Avcvi evDÛ 100| {GLv‡b
D‡j øL¨ †h wfRyq¨vj †ewmK WU †bU Gi †eUv fvm©‡b DcwiD³ †NvlYvwU 100wU Dcv`vb
ˆZwi K‡i|}
wfRyq¨vj †ewmK 7.0/WU †b‡U †Z wmb‡U· Gi cwieZ©bmg~n
†fwiq¨vej †¯‹vwcs (Variable Scoping)t
wb‡Pi D`vniYUzKz jÿ¨ Kiæb t
If x=y then
Dim z as integer
' other code
End If
z=100 'Outside of If ... Then block
f~wgKv 17
DcwiD³ †KvWUzKz wfRyq¨vj †ewmK 6.0 †Z h_vh_fv‡e ivb Ki‡e KviY G‡Z †Kvb e øK
†j‡fj †fwiq¨vej †¯‹vwcs †bB| wKš‘ GwU AvaywbK †cÖvMÖvwgs fvlvi Av`k© bq| hviv wm-‡Z
KvR K‡ib Zviv wbðqB welqwU fv‡jv K‡iB Rv‡bb| Z‡e myLei GUvB †h wfwe WU †bU
GB wdPviwU mv‡cvU© K‡i|
cÖwmwWDi Ges dvskb (Procedures and Functions) t
wfRyq¨vj †ewmK 6.0-G mKj cÖwmwWDi c¨vivwgUvimg~n evB wWdë (ByRef) evB †idv‡iÝ
†cÖwiZ n‡Zv| wfRyq¨vj †ewmK WU †bU-G mKj cÖwmwWDi c¨vivwgUvimg~n evB wWdë
(ByVal) evB †fjy¨ †cÖwiZ n‡Zv|
wfRyq¨vj †ewmK 6.0-G dvskbmg~n FunctionName = return_value wmb‡U·
e¨env‡ii gva¨‡g gvb wiUvb© Ki‡Zv| wKš‘ wfwe WU †bU-G Avcwb Return KxIqvW©
e¨env‡ii gva¨‡g dvsk‡bi gvb wiUvb© Kiv‡Z cv‡ib| Z‡e GwU cy‡iv‡bv wmb‡U·I mv‡cvU©
K‡i|
÷¨vwUK cÖwmwWDi t
wfwe WU †bU ÷¨vwUK cÖwmwWDi mv‡cvU© K‡i bv| Avcwb hw` ÷¨vwUK cÖwmwWDi e¨envi
Ki‡Z Pvb , Z‡e †m‡ÿ‡Î Avcbv‡K G¸‡jv‡K †i¸jvi mvecÖwmwWDi-G cwieZ©b Ki‡Z n‡e
Ges ÷¨vwUK cÖwmwWD‡i †fwiq¨vejmg~n‡K ÷¨vwUK wn‡m‡e †NvlYv Ki‡Z n‡e|
Static Sub Test()
Dim X as integer
End Sub
cwiewZ©Z n‡q n‡q‡Q t
Sub Test()
Static X as integer
End Sub
18 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Acv‡iUi t
wfRyq¨vj †ewmK WU †b‡U Av‡iKwU eo ai‡bi cwieZ©b Gm‡Q Gi Acv‡iU‡i| wb‡Pi
†Uwe‡j A¨vmvBbK…Z bZzb Acv‡iUimg~‡ni GKwU wj÷ cÖ`Ë n‡jv|
EQV
EQV Acv‡iUiwU wfwe WU †b‡U Ò=Ó Acv‡iU‡i iƒcvš ÍwiZ n‡q‡Q|
A¨vmvBb‡g›U t
wfwe WU †bU †ek wKQy AvKl©Yxq bZzb A¨vmvBb‡g›U Acv‡iUi cÖ`vb K‡i|
Dim intX as Integer
intX = intX + 1
cwieZ©b n‡q n‡q‡Q t
Dim intX as Integer
intX += 1
bZzb A¨vmvBb‡g›U Acv‡iUi
Acv‡iUi A¨vKkb
+= Addition and concatenation
-= Subtraction
*= Multiplication
/= and \= Division
^= Exponentiation
&= String concatenation
f~wgKv 19
†cÖvcvwU©R t
Let, Get Ges Set
wfwe 6-G †Kvb GKwU †fwiq¨ve‡j Ae‡R± Bb÷¨vÝ A¨vmvBb Ki‡Z Set †÷U‡g›UwU
Aek¨B e¨envi Ki‡Z n‡Zv| wWdë †cÖvcvwU©RÕi Kvi‡b GwU wfRyq¨vj ‡ewmK 6-G
Avek¨Kxq wQj| wb‡Pi D`vniYwU jÿ¨ Kiæb t
Dim x as Variant
Dim strName as string
'Assign the value of Text1.Text to StrName
'(Text is the default property of the textbox control in VB6)
StrName=Text1
'Here we assign the actual Textbox object to the variable x
'Note that we use the Set keyword so VB knows we want to assign
'to x the object itself instead of the default property
Set x=Text1
wfwe WU †bU †Kvb wWdë †cÖvcvwU©R MÖvn¨ K‡i bv weavq G‡Z Set Kx IqvW©wU e¨env‡ii
†Kvb cÖ‡qvRb c‡o bv| wVK GKBfv‡e Let wmb‡U‡·i e¨enviI wfwe WU †b‡U Dn¨|
wWdë †cÖvcvwU©Rt
wfwe WU †b‡U ‡Kvb Ae‡R‡±i Rb¨ wWdë †cÖvcvwU©R GLb Avi mv‡cvU© K‡i bv| wfRyq¨vj
†ewmK 6.0-‡Z Kv÷g K¬vmmg~‡ni wWdë †cÖvcvwU©R _vK‡Z cvi‡Zv Ges wfRyq¨vj
Ae‡R±mg~‡niI (†hgbt †U·U e·, wj÷ e· Ges K‡¤^v e·) wWdë †cÖvcvwU©R ivLv
†h‡Zv|
strName = Text1 'Text is the
'name of a
'textbox on a
'form
Me.Caption = "Hello World"
cwiewZ©Z n‡q n‡q‡Q t
strName = Text1.Text 'must use the
'Text property
Me.Caption = "Hello World"
20 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
DBRvi wWdvBb&W UvBc t
wfwe WU †bU GLb Avi BDRvi wWdvBb&W UvBc mv‡cvU© K‡i bv| G‡`i cwie‡Z© GLb
÷ªvKPvi e¨envi Kiv nq hv AviI †ewk kw³kvjx Ges bgbxq|
Public Type MyCust
strNameas String
strEmail as String
End Type
cwiewZ©Z n‡q n‡q‡Q t
Public Struct MyCust
Private strNameas String
Private strEmail as String
End Struct
K‡›Uªvj †d¬v t
wfwe WU †b‡U K‡›Uªvj †d¬v-‡Z Lye †ewk cwieZ©b Avbv nq wb| me‡P‡q eo cwieZ©b
†h‡ÿ‡Î Avbv n‡q‡Q Zv n‡jv GoSub KxIqv‡W©| Z‡e †h‡nZz AvaywbK †W‡fjcviMY GB
KxIqvW©wU †Zgb GKUv e¨envi K‡ib bv †m‡nZz GwU wb‡q Le GKUv `ytwðš Ív bv Ki‡jI
Pj‡e| Pjyb K‡›Uªvj †d¬v-‡Z †hme cwieZ©b Avbv n‡q‡Q &K bR‡i Zv GKUz †`‡L wbB|
While...Wend
wfwe wU †bU While...Wend ÷ªvKPviwU GLb Avi mv‡cvU© K‡i bv| GwU cwiewZ©Z n‡q
GLb n‡q‡Q t
While....End While
While X<5
'Your Code
Wend
cwiewZ©Z n‡q n‡q‡Q t
While X<5
'Your Code
End While
f~wgKv 21
GoSub...Return
wfRyq¨vj †ewK‡mi c~e©eZ©x fvm©bmg~‡n †h GoSub ... Return †÷U‡g›U e¨eüZ n‡Zv PjwZ
fvm©‡b Avcwb Zv wi‡qj mve iæwUbÕi gva¨‡g Ki‡Z cvi‡eb| wb‡Pi D`vniYwU †`Lyb t
Visual Basic 6
Sub TestThis (ByRef i As Integer)
GoSub IncrementThis
Exit Function
IncrementThis:
i = i + 1
Return
End Function
VB.NET
Sub TestThis(ByRef i As Integer)
Increment(i)
End Function
Sub Increment (ByRef i As Integer)
i = i + 1
End Sub
wfRyq¨vj †ewK‡mi PjwZ fvm©‡b GB GoSub ... Return †÷U‡g›U bv _vKvq Kv‡iv Kó bv
†c‡jI Pj‡e| †Kbbv GwU c~‡e© p-code Gi †ÿ‡Î w¯úW mgm¨v Ki‡Zv|
Return
Return †÷U‡g›UwU dvsk‡bi Kjv‡ii wbKU K‡›Uªvj wiUvb© K‡i|
Private Function GetNames() as String
Dim MrfName as string
MrfName = "Try to Play"
GetNames = strName
End Function
22 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
cwiewZ©Z n‡q n‡q‡Q t
Private Function GetNames() as String
Dim MrfName as string
MrfName = "Try to Play"
Return strName
End Function
A¨vwcø‡Kkb UvBc t
wfRyq¨vj †ewmK 6.0-‡Z †`Lv Ggb A‡bK A¨vwc ø‡Kkb UvBc †Ug‡c øU Avcwb Lyu‡R cv‡eb
bv wfRyq¨vj †ewmK WU †b‡U| Z‡e Gmme A¨vwc ø‡Kkb c‡ivÿfv‡e ˆZwii my‡hvM K‡i
w`‡q‡Q wfwe WU †bU| wigyfK…Z Gme A¨vwc ø‡Kkb UvBc¸‡jv n‡jv t
Webclasses ActiveX documents DHTML applications User controls Property pages
†WUv A¨v‡·m t
Data Binding, RDO Ges ADO:
wfwe WU †bU RDO Ges ADO †WUv †mvm©Õi †WUv evBwÛs mv‡cvU© K‡i bv| G‡ÿ‡Î wb‡Pi
†KvWwU mwVK t
Text.DataField = "Customer_Name"
Set Text1.Datasource = rs
mwZ¨ ej‡Z wfwe WU †b‡U †`qv n‡q‡Q AviI kw³kvjx Ges A¨vWfvÝ †WUv evBwÛs
K¨vcvwewjwU, hv Avcwb wewfbœfv‡e cÖ‡qvM Ki‡Z cvi‡eb|
DAO:
wfwe WU †bU ‡WUv A¨v‡·m Ae‡R± ( Data Access Object[DAO]) mv‡cvU© K‡i bv|
Avcwb G‡ÿ‡Î ADO.NET e¨envi Ki‡Z cv‡ib|
f~wgKv 23
wWevwMs t
Debug.Print
wfRyq¨vj †ewmK WU †b‡U Debug.Print-Gi e`‡j Debug.Write A_ev
Debug.Writeline †g_W Dbœqb Kiv n‡q‡Q| wfweÕi Debug K¬vm †g_W Ges †cÖvcvwU©i
GKwU KgwcøU †mU cÖ`vb K‡i hv Avcbv‡K †KvW wWevwMs-G mvnvh¨ Ki‡e †ek|
Debug.Print Err.number
cwieZ©b n‡q n‡q‡Q t
Debug.Writeline Err.Number
A_ev,
Debug.Write Err.Number
Debug.Assert
wfRyq¨vj †ewm‡Ki PjwZ fvm©b Debug.Assert.†g_WwU GLb Avi mv‡cvU© K‡i bv|
eZ©gv‡b GwU wWevM (Debug) K¬v‡mi Fail Ges Assert †g_W Øviv m¤úbœ Kiv n‡q _v‡K|
AviI wKQy cwieZ©b t
IsMissing
wfwe WU †bU IsMissing dvskbwU GLb Avi mv‡cvU© K‡i bv| Gi cwie‡Z© GLb e¨eüZ
nq IsNothing †÷U‡g›U|
Date$ Ges Time$
Date$ Ges Time$ dvskb yÕwU wfwe WU †b‡U DateString Ges TimeString‡i gva¨‡g
wi‡cøm n‡q‡Q|
Atn, Sgn Ges Sqr
24 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Atn, Sgn Ges Sqr dvskb wZbwU wfwe WU †b‡U System.Math Gi Atan, Sign Ges
Sqrt -Gi gva¨‡g wi‡cøm n‡q‡Q|
†g‡mR e·t
MsgBox dvskbwU MessageBox K¬v‡mi Show †g_‡Wi gva¨‡g wi‡c øm Kiv n‡q‡Q|
MsgBox "VB6 is Great"
cwiewZ©Z n‡q n‡q‡Q t
MesssageBox.Show "VB.NET is Greater"
wfRyq¨vj †ewmK Pvjv‡bvi Rb¨ wm‡÷g †hvM¨Zv
wfRyq¨vj ÷zwWI WU †bU-Gi wewfbœ Bb÷‡jkb Ack‡bi Rb¨ cÖZ¨vwkZ wm‡÷g †hvM¨Zvi
GKwU wj÷ wb‡P cÖ`vb Kiv n‡jvt
m¤ú~Y© wfRyq¨vj ÷zwWI WU †bU Bb÷‡jk‡bi Rb¨ cÖ‡qvRbxq wm‡÷g †hvM¨Zv t
Visual Studio .NET
Enterprise
Architect
Enterprise
Developer
Professional Academic
Processor PC with a Pentium II-class processor, 450 MHz
(recommended: Pentium III-class, 600MHz)
RAM1 Windows NT 4.0 Workstation Í 64 MB, Windows NT 4.0
Server Í 160 MB
(recommended: 96 MB for Workstation, 192 MB for
Server)
Windows 2000 Professional Í 96 MB; Windows 2000 Server
f~wgKv 25
Í 192 MB
(recommended: 128 MB for Professional, 256 MB for Server)
Windows XP Professional Í 160 MB
(recommended: 192 MB)
Windows XP Home Í 96 MB
(recommended: 160 MB)
Available
Hard Disk
Space2
600 MB on system drive, 3 GB installation drive
Operating
System3, 4
Windows 2000®, Windows XP, and Windows NT 4.0
CD-ROM
or DVD-
ROM
Drive5
Required
Video 800 x 600, 256 colors (recommended: High Color 16-bit)
Mouse Microsoft mouse or compatible pointing device
c„_K c„_K j¨v½y‡qR Bb÷‡jk‡bi Rb¨ wm‡÷g ‡hvM¨Zv t
Visual Basic
.NET
Visual C++
.NET Visual C# .NET
Processor PC with a Pentium II-class processor, 450 MHz
(recommended: Pentium III-class, 600MHz)
RAM1 Windows NT 4.0 Workstation Í 64 MB, Windows NT 4.0
Server Í 160 MB
26 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
(recommended: 96 MB for Workstation, 192 MB for
Server)
Windows 2000 Professional Í 96 MB; Windows 2000 Server Í 192 MB
(recommended: 128 MB for Professional, 256 MB for
Server)
Windows XP Professional Í 160 MB
(recommended: 192 MB)
Windows XP Home Í 96 MB
(recommended: 160 MB)
Available
Hard Disk
Space2
600 MB on
system drive, 1.5
GB installation
drive
600 MB on
system drive, 2
GB installation
drive
600 MB on system
drive, 1.5 GB
installation drive
Operating
System3, 4
Windows 2000®, Windows XP and Windows NT 4.0
CD-ROM or
DVD-ROM
Drive5
Required
Video 800 x 600, 256 colors (recommended: High Color 16-bit)
Mouse Microsoft mouse or compatible pointing device
G‡ÿ‡Î Pjyb cÖ_‡gB †`‡L wbB †h‡Kvb GKwU wbw`©ó †KvwWs wfRyq¨vj †ewmK 6.0-‡Z Ges
7.0 (VB.NET) †Z wKfv‡e Ki‡Z nq| G‡Z K‡i `yÕwU fvm©‡bi ga¨Kvi †KvwWs cv_©K¨
mn‡RB Avcbvi †evaMg¨ n‡e|
f~wgKv 27
wfRyq¨vj †ewmK WU †bU
Bb÷‡jkb
28 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
wfRyq¨vj †ewmK Bb÷‡jkb cÖwµqv
wfRyq¨vj ÷zwWI WU †bU-Gi 1 bs wmwWwU WªvB‡f cÖ‡ek Kiv‡bvi wKQyÿ‡Yi g‡a¨B Avcwb
wb‡Pi DB‡ÛvwU †`L‡Z cv‡eb|
GLv‡b mg Í Bb÷‡jkb cÖwµqvwU‡K wZbwU cÖavb fv‡M fvM Kiv n‡q‡Q| G¸‡jv n‡jvt
1. Windows Component Update
2. Visual Studio .NET
3. Service Release
GQvovI Gi wb‡Pi w`‡K AviI wZbwU wj¼/Ackb i‡q‡Q| G¸‡jv e¨envi K‡i Avcwb Gi
ReadMe dvBjwU ‡`L‡Z cvi‡eb, wi‡gvU K‡¤úv‡b›U †mUAvc Ki‡Z cvi‡eb Ges
Bb÷‡jkb cÖwµqv †_‡K †ewi‡q Avm‡Z cvi‡eb|
hvB †nvK, Windows Component Update AckbwU‡Z wK¬K Ki‡j †mU Avc cÖwµqv ïiæ
n‡q hv‡e Ges GKwU DB‡Ûv cÖ`k©b Ki‡e|
f~wgKv 29
Avcwb hw` Avcbvi Kw¤úDUv‡i I‡qe cÖ‡R± †nv÷ Ki‡Z Pvb Z‡e †m‡ÿ‡Î cÖ_‡gB Avcwb
Avcbvi AwZwi³ K‡¤úv‡b›U¸‡jv Bb÷j K‡i wbb| GRb¨ Install Components evU‡b
wK¬K Kiæb| Avi hw` Zv bv Pvb Z‡e †m‡ÿ‡Î Avcwb Continue evU‡b wK¬K Kiæb| †h‡nZz
Avwg Avgvi Kw¤úDUv‡i I‡qe cÖ‡R± †nv÷ Ki‡Z Pvw”Q bv †m‡nZz Avwg Continue evU‡b
wK¬K KiwQ| †`L‡eb wKQyÿ‡Yi g‡a¨B †mU Avc Avi DB‡ÛvR Avc‡WU Bb÷‡jkb cÖ‡mm
ïiæ K‡i w`‡q‡Q| GwU Gi ciciB wb‡Pi DB‡ÛvwU cÖ`k©b Ki‡e|
30 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Avcwb Gi k‡Z© m¤§Z n‡j I accept the agreement AckbwU wbe©vPb K‡i Continue
evU‡b wK¬K Kiæb|
GwU †h †h K‡¤úv‡b›Umg~n Bb÷j Ki‡e Gevi Zvi GKwU wj÷ cÖ`k©b Ki‡e| Gevi
Install evU‡b wK¬K Kiæb|
†`L‡eb GwU G‡K G‡K mg¯ Í K‡¤úv‡b›Umg~n Bb÷j Ki‡e|
f~wgKv 31
†mUAvc hw` mg¯ Í K‡¤úv‡b›U Bb÷j Ki‡Z bv cv‡i Z‡e †m‡ÿ‡Î GwU GKwU wi‡cvU© cÖ`vb
Ki‡e| wb‡Pi wP‡Î jÿ¨ Kiæb|
Gevi Done evU‡b wK¬K K‡i cybivq D³ K‡¤úv‡b›U‡K Bb÷j Kiæb| GwU hw` GeviI e¨_©
nq Z‡e †m‡ÿ‡Î m¤¢ve¨ mgvav‡bi Rb¨ WvqvjM DB‡ÛvwU‡Z cÖ`Ë ReadMe evU‡b wK¬K
Kiæb|
Gevi wfRyq¨vj ÷zwWI WU †bU †mUAvc ïiæ n‡e|
32 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Avcwb Gevi jvB‡mÝ A¨vMÖx‡g›UwU c‡o hw` Zv‡Z m¤§Z nb Z‡e I accept the
agreement †iwWI evUbwU‡Z wK¬K Kiæb Ges †cÖvWv± Kx Ges Avcbvi bvg Gw›Uª K‡i
Continue evU‡b wK¬K Kiæb|
Gevi †÷Avc Zvi Ackb c‡e© P‡j hv‡e| Avcwb GLvb †_‡K wK wK AvB‡Ug Bb÷j Ki‡Z
Pvb Ges Zv †Kvb WªvB‡f Bb÷j Ki‡Z Pvb Zv wm‡j± K‡i w`‡Z cvi‡eb| wb‡Pi wP‡Î jÿ¨
Kiæb t
f~wgKv 33
Gevi Install Now! evU‡b wK¬K Kiæb| †`L‡eb wKQyÿ‡Yi g‡a¨B Bb÷‡jkb ïiæ n‡q
†M‡Q|
Bb÷‡jkb cÖwµqv mgvß n‡j GwU †cÖvMÖvg MÖæ‡c wb‡`©wkZ MÖæc Ges AvBKbmg~n ˆZwi K‡i
†`‡e| hv e¨envi K‡i cieZ©x‡Z wfRyq¨vj ÷zwWI‡Z cÖ‡ek Ki‡Z cvi‡eb|
34 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
wfRyq¨vj †ewmK WU †bU
nv‡Z Lwo
f~wgKv 35
wfRyq¨vj †ewmK WU †bU PvjyKiY
wfRyq¨vj †ewmK WU †bU Pvjy Ki‡Z All Programs Gi Microsoft Visual Studio
.NET Gi Microsoft Visual Studio .NET AvB‡UgwU‡Z wK¬K Kiæb|
†`L‡eb wKQyÿ‡Yi g‡a¨B gvB‡µvmd&U& WU †bU ÷zwWIÕi ÷vU© †cR †`Lv‡e| wb‡Pi wPÎwU
jÿ¨ Kiæb|
GwU g~jZ wfRyq¨vj ÷zwWI WU †bUÕi GKwU mgwš^Z cwi‡ek| GLvb †_‡K Avcwb PvB‡j
WU †bU ÷zwWI cwievify³ †h‡Kvb Uzj KZ© „K wjwLZ †h‡Kvb cÖ‡R± I‡cb Ki‡Z cvi‡eb|
GRb¨ Gi Open Project evUbwU‡Z wK¬K Kiæb|
36 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
bZzb cÖ‡R± ˆZwii Rb¨ Avcbv‡K New Project evU‡b wK¬K Ki‡Z n‡e| GwU Avcbv‡K
GKwU DB‡Ûv cÖ`k©b Ki‡e †hLvb †_‡K Avcwb Avcbvi cÖZ¨vwkZ cÖ‡R‡±i aib wbe©vPb K‡i
w`‡Z cvi‡eb|
GB DB‡ÛvwUi More evUbwU †P‡c Avcwb AviI wKQy Ackb †c‡Z cv‡ib|
f~wgKv 37
DB‡ÛvR A¨vwc ø‡Kkb ˆZwi Ki‡Z †Ug‡c øU †_‡K Windows Application wbe©vPb K‡i
OK Pvcyb|
Gev‡i †h DB‡ÛvwU cÖ`wk©Z n‡e Zvi mv‡_ Avcbvi wfRyq¨vj †ewm‡Ki c~e©eZ©x cwi‡e‡ki
wKQyUv wgj Avcwb Lyu‡R cv‡eb| Avcwb gvDm c‡q›UviwU‡K Uzjevi evU‡bi Dc‡i wb‡q †M‡j
38 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Uzj evi cÖ`wk©Z n‡e Ges mwi‡q Avb‡j Zv Avevi jywK‡q hv‡e| GwU wVK DB‡Ûv‡Ri
Uv¯‹evi nvBW Kivi g‡Zv|
Avcwb jÿ¨ Ki‡j †`L‡eb †h wfRyq¨vj †ewmK WU †bU ÷zwWIÕi UzjeviwU K‡qKwU
MÖæ‡c wef³| †hgb t
Data
Components
Windows Forms
f~wgKv 39
General
cÖwZwU MÖæ‡cB Avevi ms‡hvwRZ n‡q‡Q bZzb wKQy Uzj| †hgb t wj¼ †j‡ej
hv wjw¼s ev nvBcvi wjw¼s eySv‡Z e¨eüZ nq| †hgbt
40 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
d‡g© e¨eüZ Ae‡R±mg~n Av‡qvRb Ges web¨v‡mi Rb¨ i‡q‡Q †j AvDU Uzj evi, †hLv‡b
cÖ`vb Kiv n‡q‡Q †ek wKQy cÖ‡qvRbxq Uzj|
Gi cÖ‡R± DB‡Ûv‡K AviI †ewk DbœZ Kiv n‡q‡Q| B‡gR ev wcKPvi †cÖvcvwU©‡Z wbe©vwPZ
wcKPvi cÖ`wk©Z nq Ackb wj÷ e‡·B, hv Kv‡Ri †ÿ‡Î †ek mnvqK f~wgKv cvjb K‡i|
G‡Z AviI †hvM Kiv n‡q‡Q G·Uvb©vj Uzj| hv e¨envi K‡i G·Uvb©vj Uzj mg~n Uzj †gby‡Z
ms‡hvRb Ki‡Z cvi‡eb| †hgb t Spy++ †K Avcwb PvB‡j GB G·Uvb©vj Uzj e¨envi K‡i
Uzj †gby‡Z ms‡hvRb Ki‡Z cv‡ib|
f~wgKv 41
GQvovI Gi †KvW DB‡Ûv‡ZI Avbv n‡q‡Q bZzbZ¡|
wfRyq¨vj †ewmK WU †bU-G mshy³ wKQy bZzb K‡›Uªv‡ji cwiwPwZ wb‡P Zz‡j aiv n‡jv t
wj¼ †j‡ej (Link Label) t
Avcwb GB wj¼ †j‡ej K‡›Uªvj‡K wewfbœ Kv‡R e¨envi Ki‡Z cv‡ib| D`vniY¯^iƒc, Gi
gva¨‡g Avcwb mn‡RB e¨enviKvix‡K eySv‡Z mÿg n‡eb †h G‡Z wK¬K Ki‡j wKQy GUv
NU‡e A_©vr GwU wK¬K‡hvM¨| †Kbbv B›Uvi‡b‡Ui GB hy‡M hvivB Avgiv GKev‡ii Rb¨ n‡jI
†Kvb I‡qe mvBU wfwRU K‡iwQ A_ev †Kvb †ní dvBj e¨envi K‡iwQ Zv‡`i Kv‡Q Gi
A¨vwUªweDUwU LyeB Kgb| Zvi Dci Avcwb Gi A¨vwUªweDU cwieZ©b K‡i w`‡Z cv‡ib| GwU
B‡Zvg‡a¨B wK¬K Kiv n‡q‡Q wKbv Zv †evSv‡bvi Rb¨ G‡Z Avjv`v KvjviI e¨envi Kivi
myweav i‡q‡Q| GB mg¯ Í wen¨vwfqvi wbqš¿‡Yi Rb¨ Gi wb‡æv³ cvuPwU †cÖvcvwU© i‡q‡Q t
LinkBehavior
LinkArea
LinkColor
VisitedLinkColor
LinkVisited .
42 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
†WU UvBg wcKvi (DateTimePicker) t
GB K‡›UªvjwU ZvwiL Ges mgqÕi d‡g©UK…Z cÖ`k©b mv‡cvU© K‡i| Avcwb Gi wcÖwWdvBb
d‡g©U †_‡K †h‡Kvb GKwU d‡g©U †e‡Q wb‡Z cvi‡eb|
†Wv‡gBb Avc WvDb (DomainUpDown)t
GB †Wv‡ggBb Avc WvDb K‡›UªvjwU †`L‡Z g~jZ GKwU †U·U e· Ges GK †Rvov A¨v‡ivÕi
mgš^q| GB A¨v‡iv `y'†Uv‡Z wK¬‡Ki gva¨‡g Avcwb GKwU wj÷Õi mv‡c‡ÿ †U·U e‡·i
†U·U cwieZ©b Ki‡Z cvi‡eb|
f~wgKv 43
wbD‡gwiK Avc WvDb (NumericUpDown)t
DB‡ÛvR d‡g©i GB wbD‡gwiK Avc WvDb K‡›UªvjwU †`L‡Z g~jZ GKwU †U·U e· Ges GK
†Rvov A¨v‡ivÕi mgš^q| GB A¨v‡iv `y'†Uv‡Z wK¬‡Ki gva¨‡g Avcwb †U·U e‡·i †fjy¨
A¨vWRv÷ Ki‡Z cvi‡eb|
†ní †cÖvfvBWvi (HelpProvider) t
GB †ní †cÖvfvBWvi K‡¤úv‡b›UwU e¨envi K‡i Avcwb †Kvb GKwU †ní dvBj †_‡K wbw ©ó
K‡›Uªv‡ji Rb¨ †ní UwcK wba©viY Ki‡Z cvi‡eb| GgbwK GB †ní dvBjwU HTML A_ev
HTMLHelp 1.x A_ev Zvi cieZ©x †h‡Kvb fvm©b n‡Z cv‡i|
†cR †mU Avc WvqvjM (PageSetupDialog)t
DB‡ÛvR A¨vwc ø‡Kk‡b wcÖw›Us Gi D‡Ï‡k¨ †cR †mU Avc-Gi Rb¨ GB PageSetupDialog
K‡¤úv‡b›UwU e¨eüZ nq| GwU g~jZ GKwU wcÖKbwdMvW©W WvqvjM e·| GwU e¨envi K‡i
Avcwb e¨enviKvix‡K eW©vi Ges gvwR©b A¨vWRv÷ Kiv, †nWvi Ges dzUvi Ges Awi‡q‡›Ukb
wba©vi‡Yi my‡hvM w`‡Z cv‡ib|
wcÖ›U wcÖwfD K‡›Uªvj (PrintPreviewControl)t
†Kvb WKz‡g›U wcÖ›U Ki‡j †Kgb †`Lv‡e Zv wcÖ›U Kivi c~‡e©B †`‡L †bqvi Rb¨ GB wcÖ›U
wcÖwfD K‡›UªvjwU e¨eüZ nq|
44 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
‡bvwUdvB AvBKb (NotifyIcon)t
Uv¯‹ev‡ii †bvwUdvB Gwiqv‡Z †cÖvMÖvg Bb÷¨vÝ AvBKb Z_v †cÖv‡mm cÖ`k©‡bi Rb¨ GwU
e¨eüZ nq|
cvVKe„›`, †Zv Pjyb, Gevi Avgiv wfRyq¨vj †ewmK WU †bU-G GKwU mvavib cÖ‡R± ˆZwii
gva¨‡g Dc‡iv³ Av‡jvPbv‡K AviI ¯úó K‡i Zzwj|
cÖ_‡gB gvB‡µvmd&U& wfRyq¨vj ÷zwWI WU †bU-G cÖ‡ek Kiæb| ÷vU© †cR G New Project
kxl©K evUbwU‡Z wK¬K Kiæb| GwU Avcbv‡K wb‡Pi DB‡ÛvwU cÖ`k©b Ki‡e t
†h‡nZz Avgiv DB‡ÛvR A¨vwc ø‡Kkb ˆZwi Ki‡ev †m‡nZz Templates †_‡K Windows
Application wbe©vPb Kiæb| Avcwb PvB‡j Gi Name †U· e‡· Avcbvi cÖ‡R‡±i
bvg Ges Location †U·U e‡· †jv‡Kkb cÖ`vb Ki‡Z cv‡ib| Ab¨_vq GwU Avcbvi
cÖ‡R±i Rb¨ GKwU wWdë bvg I †jv‡Kkb e¨envi Ki‡e| Gevi OK evU‡b wK¬K Kiæb|
f~wgKv 45
Gevi c`©vq wfRyq¨vj †ewmK WU †bU-Gi AvB wW B cÖ`wk©Z n‡e| wfwe 6.0-Gi mv‡_ wfwe
7.0 Gi GB AvB wWBwUi †gvUvgywU GKwU wgj i‡q‡Q| ZeyI Avwg Gi GKwU mswÿß cwiPq
w`w”Q t
dg© t
GwU Gi dg©| GwU Avcbvi A¨vwcø‡Kk‡bi g~j K‡›UBbvi hv mg¯ Í K‡›Uªvj‡K aviY K‡i|
46 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Uzj e· t
GwU n‡”Q Gi Uzje·| Avcwb GLvb †_‡K †h †Kvb K‡›Uªvj/Dcv`vb wbe©vPb K‡i d‡g© ¯’vcb
Ki‡Z cvi‡eb|
†cÖvcvwU©R DB‡Ûv t
GwU Gi †cÖvcvwU©R DB‡Ûv, hv K‡›Uªvjmg~‡ni wewfbœ A¨vwUªweD‡Ui gvb wba©vi‡Yi Rb¨ e¨eüZ
nq|
f~wgKv 47
mwjDkb G·‡c øvivi t
Avcbvi cÖ‡R‡±i mg¯ Í dg©, DBRvi K‡›Uªvj, K¬vm Ges wewfbœ gwWDj G·‡c øvi Kivi Rb¨
GwU e¨eüZ nq| GwU g~jZ dg© I Ab¨vb¨ K¬vmmg~nÕi e¨e¯’vcbv mnR Kivi Kv‡R e¨eüZ
nq|
†KvW DB‡Ûv t
48 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi Avgiv Avgv‡`i Kvw•LZ cÖ‡R±wU ˆZix Ki‡ev| Uzjevi †_‡K GKwU ixP †U·U e·
(RichTextBox) d‡g© ¯’vcb Kiæb| Gevi d‡g© `yÕwU evUb ¯’vcb Kiæb|
d‡g©i Text (wfRyq¨vj †ewmK 6.0-‡Z hv Caption bv‡g wQj) †cÖvcvwU©R-G MyApp
gvbwU cÖ`vb Kiæb| cÖ_g evUbwUi Text †cÖvcvwU©R G Open gvb wba©vib Kiæb| wØZxq
evUbwUi GKB †cÖvcvwU©‡Z Exit gvbwU cÖ`vb Kiæb| Gevi dg©wU †`L‡Z A‡bKUv G iKg
n‡e|
f~wgKv 49
Gevi †KvW DB‡Ûv‡Z 1 bs evU‡bi wK¬K B‡f‡›U bx‡Pi †KvWUzKz wjLyb t
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e
As System.EventArgs) Handles Button1.Click
Dim openFile1 As New OpenFileDialog()
' Initialize the OpenFileDialog to look for RTF files.
openFile1.DefaultExt = "*.txt"
openFile1.Filter = "Text Files|*.txt"
' Determine whether the user selected a file from the
' OpenFileDialog.
If (openFile1.ShowDialog()= _ System.Windows.Forms.DialogResult.OK)_
And (openFile1.FileName.Length > 0) Then
' Load the contents of the file into the RichTextBox.
RichTextBox1.LoadFile(openFile1.FileName, _
RichTextBoxStreamType.PlainText)
End If
End Sub
2 bs evU‡bi wK¬K B‡f‡›U bx‡Pi †KvWUzKz wjLyb t
Private Sub Button2_Click(ByVal sender As System.Object, _ ByVal e
As System.EventArgs) Handles Button2.Click
RichTextBox1.Clear()
End Sub
Gevi F5 †P‡c †cÖvMÖvgwU ivb Kiæb| wKQyÿ‡Yi g‡a¨B Avcwb wb‡Pi DB‡ÛvwU †`L‡Z
cv‡eb|
Gevi Open kxl©K evUbwU‡Z wK¬K Kiæb| †`L‡eb GKwU I‡cb WvqvjM e· cÖ`wk©Z
n‡”Q|
50 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi †h †U·U dvBjwU I‡cb Ki‡Z Pvb Zv wbe©vPb K‡i I‡cb evU‡b wK¬K Kiæb| †`L‡eb
ixP †U·U e·wU‡Z wb‡`©wkZ I‡cb n‡q‡Q|
Avi Avcwb hw` †U·U e·wU mKj †jLv gy‡Q †dj‡Z Pvb Clear evUbwU Pvcyb|
GB Aa¨vqwU‡Z wfRyq¨vj †ewmK WU †b‡U ms‡hvwRZ bZzb wdPvimg~n, wfwe 6.0 Ges †b‡U
ga¨eZ©x cv_©K¨mg~n, Ges wfwe WU †b‡U wKfv‡e †cÖvMÖvg ˆZwi Kiv hvq Zvi wKQ~ D`vniY
†`Ljvg| Z‡e mwZ¨ K_v GUvB †h wfRyq¨vj †ewmK WU †bU cy‡ivcywifv‡e Rvb‡Z Avcbv‡K
Aek¨B A‡bK Mfx‡i Wye w`‡Z n‡e| cieZ©x Aa¨v‡q wKQz mvaviY D`vniY mwbœ‡ewkZ n‡jv
hv Avcbv‡K wfRyq¨vj †ewmK WU †b‡U wewfbœ K‡›Uªvj wb‡q wKfv‡e †cÖvMÖvwgs Ki‡Z nq †m
m¤ú‡K© aviYv †`‡e|
f~wgKv 51
wfRyq¨vj †ewmK WU †bU
D`vniY
52 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
wfRyq¨vj †ewmK WU †b‡U wKfv‡e mvaviY K‡›Uªvjmg~n wb‡q KvR Kiv hvq wb‡P wKQz
D`vni‡Yi gva¨‡g Zv †`Lv‡bv n‡jv t
GKwU mvaviY DB‡ÛvR dg© ˆZwi t
GB D`vni‡Y Avgiv HelloWorld av‡Pi GKwU mvaviY DB‡ÛvR dg© ˆZwi I ivb Kiv
wkL‡ev|
DB‡ÛvR dg© ˆZwi Ki‡Z t
Visual Studio Pvjy Kiæb|
HelloWorld bv‡g GKwU DB‡ÛvR Gwc ø‡Kkb ˆZwi Kiæb|
Gevi Uzjevi †_‡K dg© wWRvBb c¨v‡b‡j cÖ`wk©Z d‡g© GKwU evUb ¯’vcb Kiæb|
f~wgKv 53
evUbwU wm‡j± Ki‡Z evUbwU‡Z wK¬K Kiæb Ges Gi Properties DB‡Ûvi Text
†cÖvcvwU©‡Z Say Hello †U·UwU wj‡L w`b|
Gevi GB A¨vwcø‡KkbwUi Rb¨ †KvW wjLyb t
evU‡b wK¬K B‡f‡›U B‡f›U n¨v‡Ûjvi ms‡hvR‡bi Rb¨ d‡g© ¯’vwcZ evUbwUi Dci
Wej wK¬K Kiæb| †`L‡eb n¨v‡ÛjviwUi †KvW †mKk‡b Bbmvikb c‡q›Um‡gZ
†KvW DB‡ÛvwU cÖ`wk©Z n‡”Q|
54 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi wb‡`©wkZ c‡q‡›U wb‡Pi †KvWUzKz wjLyb t
MessageBox.Show ("Hello, World!")
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwc ø‡KkbwU ivb Kiv‡Z wK‡ev‡W©i F5 wK Pvcyb|
A¨vwcø‡KkbwU ivb Kivi ci Gi evU‡bi wK¬K B‡f‡›U cÖ`Ë wb‡`©kbv h_vh_fv‡e
KvR Ki‡Q wKbv Zv hvPvB Kivi Rb¨ evUbwU‡Z wK¬K Kiæb| †`L‡eb †g‡mR
e·wU cÖ`wk©Z n‡”Q|
Gevi DB‡ÛvR dg©wU eÜ K‡i wfRyq¨vj ÷zwWI WU †b‡U wd‡i Avmyb|
DB‡ÛvR d‡g©i eW©vi cwieZ©b t
GB D`vni‡Y Avgiv GKwU DB‡ÛvR dg© ˆZwi I eW©vi cwieZ©b Kiv wkL‡ev|
DB‡ÛvR dg© ˆZwi Ki‡Z t
Visual Studio Pvjy Kiæb|
FormBorder bv‡g GKwU DB‡ÛvR Gwc ø‡Kkb ˆZwi Kiæb|
Gevi Uzjevi †_‡K dg© wWRvBb c¨v‡b‡j cÖ`wk©Z d‡g© GKwU evUb ¯’vcb Kiæb|
f~wgKv 55
evUbwU wm‡j± Ki‡Z evUbwU‡Z wK¬K Kiæb Ges Gi Properties DB‡Ûvi Text
†cÖvcvwU©‡Z Fixed Border †U·UwU wj‡L w`b|
Gevi GB A¨vwcø‡KkbwUi Rb¨ †KvW wjLyb t
evU‡b wK¬K B‡f‡›U B‡f›U n¨v‡Ûjvi ms‡hvR‡bi Rb¨ d‡g© ¯’vwcZ evUbwUi Dci
Wej wK¬K Kiæb| †`L‡eb n¨v‡ÛjviwUi †KvW ‡mKk‡b Bbmvikb c‡q›Um‡gZ
†KvW DB‡ÛvwU cÖ`wk©Z n‡”Q|
Gevi wb‡`©wkZ c‡q‡›U wb‡Pi †KvWUzKz wjLyb t
56 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Me.FormBorderStyle = _
System.Windows.Forms.FormBorderStyle.FixedDialog
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwc ø‡KkbwU ivb Kiv‡Z Kx-†ev‡W©i F5 wK Pvcyb| Gevi dg©wU‡K
wimvBR Kivi †Póv Kiæb| †`L‡eb dg©wU wimvBR n‡”Q|
A¨vwcø‡KkbwU ivb Kivi ci Gi evU‡bi wK¬K B‡f‡›U cÖ`Ë wb‡`©kbv h_vh_fv‡e
KvR Ki‡Q wKbv Zv hvPvB Kivi Rb¨ evUbwU‡Z wK¬K Kiæb| Gevi cybivq
dg©wU‡K wimvBR Kivi †Póv Kiæb| †`L‡eb dg©wU wimvBR n‡”Q bv|
Gevi DB‡ÛvR dg©wU eÜ K‡i wfRyq¨vj ÷zwWI WU †b‡U wd‡i Avmyb|
‡bvU t
wfwe WU ‡b‡U Avcwb dg© eW©v‡ii wb‡gœv³ gvb wba©viY Ki‡Z cvi‡eb|
None
Fixed 3D
Fixed Dialog
Fixed Single
Fixed Tool Window
Sizable
Sizable Tool Window
GKBfv‡e
DB‡ÛvR dg© wimvBR Kivi Rb¨ wb‡Pi †KvW e¨envi Kiæb|
Form1.Size = New System.Drawing.Size(400, 400)
GwU dg©‡K 400 x 400 wc‡·j d‡g© wimvBR Ki‡e|
DB‡ÛvR d‡g©i †jv‡Kkb wba©vi‡Yi Rb¨ wb‡Pi †KvW e¨envi Kiæb|
Form1.Location = New Point(100, 100)
DB‡ÛvR d‡g©i †W¯‹Uc †jv‡Kkb †cvcvwU© wba©vi‡Yi Rb¨ wb‡Pi †KvW e¨envi Kiæb|
Dim frmAccounts as new Form()
Set FrmAccounts.DesktopLocation = new _ Point(100,100)
DB‡ÛvR dg©‡K mKj DB‡Ûvi Dc‡i Ae¯’vb Kiv‡bvi Rb¨ wb‡Pi †KvW e¨envi Kiæb|
myTopForm.TopMost = True
f~wgKv 57
A`„k¨ DB‡ÛvR dg© ˆZwii Rb¨ t
GB D`vni‡Y Avgiv GKwU DB‡ÛvR dg© ˆZwi I eW©vi cwieZ©b Kiv wkL‡ev|
DB‡ÛvR dg© ‰Zwi Ki‡Z t
Visual Studio Pvjy Kiæb|
FormBorder bv‡g GKwU DB‡ÛvR Gwc ø‡Kkb ˆZwi Kiæb|
Gevi Project †gbyi Add Module mve‡gby wbe©vP‡bi gva¨‡g Avcbvi cÖ‡R‡±
GKwU gwWDj ms‡hvRb Kiæb|
58 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi cÖ`wk©Z WvqvjM e· †_‡K Module AvBKbwU wbe©vPb Kiæb Ges Gi GKwU
bvg cÖ`vb K‡i Open evU‡b wK¬K Kiæb|
wb‡Pi g‡Zv GKwU DB‡Ûv cÖ`wk©Z n‡e|
Gevi gwWDj ev K¬v‡m GKwU Main mve iæwUb ˆZwi Kiæb hv †cÖv‡R‡± ÷vU© Avc Ae‡R±
wn‡m‡e e¨füZ n‡e| wb‡Pi GKwU D`vniY †`qv n‡jv t
f~wgKv 59 Sub Main()
' Instantiate a new instance of Form1.
Dim f1 as New Form1()
' Display a messagebox.
' This shows the application is running,
' yet there is nothing shown to the user.
' This is the point at
' which you customize your form.
System.Windows.Forms.MessageBox.Show( _
"The application is running now, but no forms have
been shown.")
' Customize the form.
f1.Text = "Running Form"
' Show the instance of the form modally.
f1.ShowDialog()
End Sub
Gevi GB A¨vwcø‡KkbwUi Rb¨ †KvW wjLyb t
evU‡b wK¬K B‡f‡›U B‡f›U n¨v‡Ûjvi ms‡hvR‡bi Rb¨ d‡g© ¯’vwcZ evUbwUi Dci
Wej wK¬K Kiæb| †`L‡eb n¨v‡ÛjviwUi †KvW ‡mKk‡b Bbmvikb c‡q›Um‡gZ
†KvW DB‡ÛvwU cÖ`wk©Z n‡”Q|
Gevi wb‡`©wkZ c‡q‡›U wb‡Pi †KvWUzKz wjLyb t
Me.FormBorderStyle = _
System.Windows.Forms.FormBorderStyle.FixedDialog
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwcø‡KkbwU ivb Kiv‡bv c~‡e© Gi ÷vU©Avc Ae‡R± Form1-Gi
cwie‡Z© Sub Main wba©viY K‡i w`b| GRb¨ Project †gbyi G‡Kev‡i wb‡P
Aew¯’Z WindowsApplication...Properties †gby wbe©vPb Kiæb|
60 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi cÖ`wk©Z WvqvjM e· †_‡K ÷vU©Avc Ae‡R± Form1-Gi cwie‡Z© Sub Main wba©viY
K‡i w`b|
ˆZwiK…Z A¨vwc ø‡KkbwU ivb Kiv‡Z Kx-†ev‡W©i F5 wK Pvcyb| †`L‡eb DB‡ÛvR
dg©wU cÖ`wk©Z n‡”Q bv| †Kbbv GwU cÖ_‡g Main() Gi Aš Ífy©³ †KvW ivb
Ki‡Q| d‡j hZÿY bv ch©šÍ wb‡`©kbvi gva¨‡g dg©wU cÖ`k©b Kiv‡bv n‡”Q GwU
ZZÿY A`„k¨ _vK‡e| e¨enviKvix‡K bv Rvwb‡q e¨vKMÖvD‡Û †Kvb A¨vwc ø‡Kkb
ivb Kiv‡bvi Rb¨ GB c×wZwU e¨envi Kiv †h‡Z cv‡i|
UªvÝcv‡i›U DB‡ÛvR dg© ˆZwi t
GB D`vni‡Y Avgiv GKwU DB‡ÛvR dg© ˆZwi I UªvÝcv‡i›U DB‡ÛvR dg© ˆZwi Kivi †KŠkj
wkL‡ev|
DB‡ÛvR dg© ‰Zwi Ki‡Z t
Visual Studio Pvjy Kiæb|
Gevi GKwU DB‡ÛvR Gwcø‡Kkb ˆZwi Kiæb|
Gevi Uzjevi †_‡K dg© wWRvBb c¨v‡b‡j cÖ`wk©Z d‡g© GKwU evUb ¯’vcb Kiæb|
f~wgKv 61
evUbwU wm‡j± Ki‡Z evUbwU‡Z wK¬K Kiæb Ges Gi Properties DB‡Ûvi Text
†cÖvcvwU©‡Z Transparent †U·UwU wj‡L w`b|
Gevi GB A¨vwcø‡KkbwUi Rb¨ †KvW wjLyb t
evU‡b wK¬K B‡f‡›U B‡f›U n¨v‡Ûjvi ms‡hvR‡bi Rb¨ d‡g© ¯’vwcZ evUbwUi Dci
Wej wK¬K Kiæb| †`L‡eb n¨v‡ÛjviwUi †KvW †mKk‡b Bbmvikb c‡q›Um‡gZ
†KvW DB‡ÛvwU cÖ`wk©Z n‡”Q|
Gevi wb‡`©wkZ c‡q‡›U wb‡Pi †KvWUzKz wjLyb t
Me.Opacity = 0.75
62 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwcø‡KkbwU ivb Kiv‡Z wK‡ev‡W©i F5 wK Pvcyb| A¨vwcø‡KkbwU ivb
Kivi ci dg©wU jÿ¨ Kiæb| †`L‡eb dg©wU bb UªvÝcv‡i›U i‡q‡Q|
Gevi dg©wUi evU‡bi wK¬K B‡f‡›U cÖ`Ë wb‡`©kbv h_vh_fv‡e KvR Ki‡Q wKbv
Zv hvPvB Kivi Rb¨ evUbwU‡Z wK¬K Kiæb| †`L‡eb dg©wU wKQzUv UªvÝcv‡i›U n‡q
†M‡Q|
f~wgKv 63
Gevi DB‡ÛvR dg©wU eÜ K‡i wfRyq¨vj ÷zwWI WU †b‡U wd‡i Avmyb|
†bvU t
Avcwb GB Opacity †cvcvwU©i gvb 0.0 †_‡K 1.0-Gi g‡a¨ wba©viY Ki‡Z cv‡ib|
d›U WvqvjM K‡¤úv‡b‡›Ui gva¨‡g d›Uwj÷ cÖ`k©bt
GB D`vni‡Y Avgiv d›U WvqvjM K‡¤úv‡b‡›Ui gva¨‡g d›Uwj÷ cÖ`k©b Kiv wkL‡ev|
DB‡ÛvR dg© ˆZwi Ki‡Z t
Visual Studio Pvjy Kiæb|
GKwU DB‡ÛvR Gwc ø‡Kkb ˆZwi Kiæb|
Gevi Uzjevi †_‡K dg© wWRvBb c¨v‡b‡j cÖ`wk©Z d‡g© GKwU evUb, GKwU
†U·e· I GKwU d›U WvqvjM K‡›Uªvj ¯’vcb Kiæb|
64 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
evUbwU wm‡j± Ki‡Z evUbwU‡Z wK¬K Kiæb Ges Gi Properties DB‡Ûvi Text
†cÖvcvwU©‡Z Font †U·UwU wj‡L w`b|
Gevi GB A¨vwcø‡KkbwUi Rb¨ †KvW wjLyb t
evU‡b wK¬K B‡f‡›U B‡f›U n¨v‡Ûjvi ms‡hvR‡bi Rb¨ d‡g© ¯’vwcZ evUbwUi Dci
Wej wK¬K Kiæb| †`L‡eb n¨v‡ÛjviwUi †KvW †mKk‡b Bbmvikb c‡q›Um‡gZ
†KvW DB‡ÛvwU cÖ`wk©Z n‡”Q|
f~wgKv 65
Gevi wb‡`©wkZ c‡q‡›U wb‡Pi †KvWUzKz wjLyb t
Private Sub Button1_Click(ByVal sender As_
System.Object,ByVal e As System.EventArgs)_ Handles
Button1.Click
If FontDialog1.ShowDialog() =
DialogResult.OK Then
TextBox1.Font = FontDialog1.Font
End If
End Sub
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwc ø‡KkbwU ivb Kiv‡Z Kx-†ev‡W©i F5 wK Pvcyb|
A¨vwcø‡KkbwU ivb Kivi ci Gi evU‡bi wK¬K B‡f‡›U cÖ`Ë wb‡`©kbv h_vh_fv‡e
KvR Ki‡Q wKbv Zv hvPvB Kivi Rb¨ evUbwU‡Z wK¬K Kiæb| †`L‡eb d›U
WvqvjM e·wU cÖ`wk©Z n‡”Q|
66 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi Avcbvi cQ‡›`i d›UwU wbe©vPb K‡i OK evU‡b wK¬K Kiæb| †`L‡eb †U·U
e‡·i †U·‡Ui d›UI Avcbvi wbe©vwPZ d‡›U cwiewZ©Z n‡q †M‡Q|
Gevi DB‡ÛvR dg©wU eÜ K‡i wfRyq¨vj ÷zwWI WU †b‡U wd‡i Avmyb|
cvmIqvW© †U·U e· ˆZwi t
GB D`vni‡Y Avgiv GKwU cvmIqvW© †U·U e· ˆZwi Kiv wkL‡ev|
DB‡ÛvR dg© ‰Zwi Ki‡Z t
Visual Studio Pvjy Kiæb|
GKwU DB‡ÛvR Gwc ø‡Kkb ˆZwi Kiæb|
Gevi Uzjevi †_‡K dg© wWRvBb c¨v‡b‡j cÖ`wk©Z d‡g© GKwU †U·U e· ¯’vcb
Kiæb|
f~wgKv 67
Gevi GB A¨vwcø‡KkbwUi †KvW DB‡Ûv‡Z wb‡Pi †KvWUzKz wjLyb t
Private Sub Form1_Load(ByVal sender As_
System.Object, ByVal e As System.EventArgs)_ Handles
MyBase.Load
' Set to no text.
TextBox1.Text = ""
' The password character is an asterisk.
TextBox1.PasswordChar = "*" ' The control will allow no more than 14 characters.
TextBox1.MaxLength = 14
End Sub
End Class
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwc ø‡KkbwU ivb Kiv‡Z Kx-†ev‡W©i F5 wK Pvcyb|
A¨vwcø‡KkbwU ivb Kivi ci Gi †U·U e‡· wKQz Gw›Uª Kiæb| †`L‡eb mg¯ Í
Gw›Uª cvmIqvW© K¨v‡i±vi Øviv cÖ`wk©Z n‡”Q Ges †U·U e·wU 14 wU Aÿ‡ii
†ewk Aÿi BbcyU wb‡”Q bv|
Gevi DB‡ÛvR dg©wU eÜ K‡i wfRyq¨vj ÷zwWI WU †b‡U wd‡i Avmyb|
68 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
OpenFileDialog K‡¤úv‡b›U e¨envi K‡i dvBj I‡cb Kiv t
GB D`vni‡Y Avgiv OpenFileDialog K‡¤úv‡b›U e¨envi K‡i dvBj I‡cb Kiv Kivi
†KŠkj wkL‡ev|
DB‡ÛvR dg© ‰Zwi Ki‡Z t
Visual Studio Pvjy Kiæb|
Gevi GKwU DB‡ÛvR Gwc ø‡Kkb ˆZwi Kiæb|
Gevi Uzjevi †_‡K dg© wWRvBb c¨v‡b‡j cÖ`wk©Z d‡g© GKwU evUb ¯’vcb Kiæb|
evUbwU wm‡j± Ki‡Z evUbwU‡Z wK¬K Kiæb Ges Gi Properties DB‡Ûvi Text
†cÖvcvwU©‡Z Open File †U·UwU wj‡L w`b|
Gevi GB A¨vwcø‡KkbwUi Rb¨ †KvW wjLyb t
evU‡b wK¬K B‡f‡›U B‡f›U n¨v‡Ûjvi ms‡hvR‡bi Rb¨ d‡g© ¯’vwcZ evUbwUi Dci
Wej wK¬K Kiæb| †`L‡eb n¨v‡ÛjviwUi †KvW ‡mKk‡b Bbmvikb c‡q›Um‡gZ
†KvW DB‡ÛvwU cÖ`wk©Z n‡”Q|
Gevi G‡Z wb‡Pi †KvWUzKz wjLyb t
f~wgKv 69 Private Sub Button1_Click(ByVal sender As_
System.Object,ByVal e As System.EventArgs)_ Handles
Button1.Click
' Displays an OpenFileDialog so the user '
can select a Cursor.
Dim openFileDialog1 As New OpenFileDialog()
openFileDialog1.Filter = "Cursor Files|*.cur"
openFileDialog1.Title = "Select a Cursor File"
' Show the Dialog.
' If the user clicked OK in the dialog
' and a .CUR file was selected, open it.
If openFileDialog1.ShowDialog() = _
DialogResult.OK Then
' Assign the cursor in the Stream to the
' Form's Cursor property.
Me.Cursor=NewCursor(openFileDialog1.OpenFile())
End If
End Sub
A¨vwcø‡Kkb ivb Kiv‡bv t
ˆZwiK…Z A¨vwc ø‡KkbwU ivb Kiv‡Z wK‡ev‡W©i F5 wK Pvcyb|
A¨vwcø‡KkbwU ivb Kivi ci Gi evUbwU‡Z wK¬K Kiæb| †`L‡eb dvBj I‡cb
WvqvjM e·wU I‡cb n‡q‡Q|
70 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Gevi GLvb †_‡K h_vh_ †jv‡Kk‡b Avcbvi cÖZ¨vwkZ Kvm©i dvBjwU wbe©vPb
K‡i w`b Ges Gi OK evU‡b wK¬K Kiæb| †`L‡eb dg©wUi Kvm©i wn‡m‡e Avcbvi
wbe©vwPZ Kvm©i dvBjwUB cÖ`wk©Z n‡”Q|
Gevi DB‡ÛvR dg©wU eÜ K‡i wfRyq¨vj ÷zwWI WU †b‡U wd‡i Avmyb|
wfwe WU †b‡U AviI wKQz D`vniY t
B‡gR d‡g©U KbfvU© Kivi Rb¨ t
GwU B‡gR d‡g©U Kbfvm©‡bi Rb¨ System.Drawing †bg‡¯úm e¨envi K‡i| GB
mvaviY wKš‘ Kvh©Ki wfwe WU †bU A¨vwc ø‡KkbwU GKwU B‡gR dvBj‡K GIF, JPG, TIFF
BZ¨vw` bvbv d‡g©‡U msiÿY Ki‡Z cv‡i| Aek¨ GB †KvWUzKz‡Z GKwU B‡gR‡K .GIF
d‡g©‡U KbfvU© Kivi wb‡`©k †`qv Av‡Q Z‡e Avcwb G‡K mvgvb¨ cwieZ©b K‡i GKwU c~Y©v½
B‡gR KbfvU©v‡i cwibZ Ki‡Z cvi‡eb|
Imports System
Imports System.Drawing
Class ConvertImageFormats
Shared Sub main()
Dim strFileToConvert As String
Console.Write("Image File to Convert :")
strFileToConvert = Console.ReadLine()
f~wgKv 71 'Initialize the bitmap object by supplying
'the image file path
Dim b As New Bitmap(strFileToConvert)
'Conver the file in GIF format, also check out
'other formats like JPG, TIFF
b.Save(strFileToConvert + ".gif",
System.Drawing.Imaging.ImageFormat.Gif)
Console.Write("Sucessfully Converted to " & _
strFileToConvert & ".gif")
End Sub
End Class
wfwe WU †b‡U GDI+ eªvk wb‡q KvR t
wb‡Pi †KvWUzKz GKwU line, GKwU ellipse, GKwU curve Ges GKwU polygon Ae‡R±
Wª Ki‡e| †KvWwU‡Z Ae‡R±mg~n wdj Kivi Rb¨ Avwg †cb Ae‡R± e¨envi K‡iwQ|
protected overrides sub OnPaint(ByVal e As _
System.Windows.Forms.PaintEventArgs)
Dim g As Graphics = e.Graphics
Dim pn As Pen = New Pen(Color.Green, 10)
g.DrawLine(pn, 100, 10, 30, 10)
g.DrawEllipse(New Pen(Color.Red, 20), 20, 40,_ 20,
20)
g.DrawBezier(New Pen(Color.Blue, 5), New Point(50,
60), New Point(150, 10), New Point(200, 230), New
Point(100, 100))
Dim point1 As PointF = New PointF(50F, 250F)
Dim point2 As PointF = New PointF(100F, 25F)
Dim point3 As PointF = New PointF(150F, 5F)
Dim point4 As PointF = New PointF(250F, 50F)
Dim point5 As PointF = New PointF(300F, 100F)
Dim curvePoints As PointF() = {point1, point2,_
point3, point4, point5}
g.DrawPolygon(New Pen(Color.Chocolate, 10),_
curvePoints)
End Sub
'Brush and Brushes Types
'Brush type is an abstract base class. 'HatchBrush,
LinearGradientBrush, 'PathGradientBrush, SolidBrush
72 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
and TextureBrush 'classes are inherited from Brush
class. You 'don't use this class directly.
'All brush types are defined in System.Drawing 'and
its helper namespaces. Before using 'brushes, you
need to add reference to this 'namespace. HatchBrush
and GradientBrush are 'defined in
System.Drawing.Drawing2D namespace.
'You use brushes to fill GDI+ objects with 'certain
kind of brush. You generally call Fill 'methods of
Graphics class to fill various 'objects such as
Ellipse, Arc, or Polygon. 'There are different kinds
of brushes. For 'example, solid brush, hatch brush,
texture 'brush, and gradient brush.
'Solid Brushes
'Solid brushes are normal brushes with no 'style. You
fill GDI+ object with a color. 'SolidBrush type is
used to work with solid 'brushes.
Dim g As Graphics = e.Graphics
Dim sdBrush1 As SolidBrush = New _
SolidBrush(Color.Red)
Dim sdBrush2 As SolidBrush = New _
SolidBrush(Color.Green)
Dim sdBrush3 As SolidBrush = New _
SolidBrush(Color.Blue)
g.FillEllipse(sdBrush2, 20, 40, 60, 70)
Dim rect As Rectangle = New Rectangle(0, 0, _ 200,
100)
g.FillPie(sdBrush3, 0, 0, 200, 40, 0F, 30F)
Dim point1 As PointF = New PointF(50F, 250F)
Dim point2 As PointF = New PointF(100F, 25F)
Dim point3 As PointF = New PointF(150F, 5F)
Dim point4 As PointF = New PointF(250F, 50F)
Dim point5 As PointF = New PointF(300F, 100F)
Dim curvePoints As PointF() = {point1, point2,_
point3, point4, point5}
g.FillPolygon(sdBrush1, curvePoints)
'Hatch Brushes
'using System.Drawing.Drawing2D;
f~wgKv 73
'The hatch brushes are brushes with a hatch 'style, a
foreground color, and a background 'color. Hatches
are a combination of rectangle 'lines and the area
between the lines. The 'foreground color defines the
color of lines; 'the background color defines the
color of area 'between lines.
'HatchStyle defines the hatch styles.
'Member Name
'BackwardDiagonal
'Cross
'DarkDownwardDiagonal
'DarkHorizontal
'DarkUpwardDiagonal
'DarkVertical
'DashedDownwardDiagonal
'DashedHorizontal
'DashedUpwardDiagonal
'DashedVertical
'DiagonalBrick
'DiagonalCross
'Divot
'DottedDiamond
'DottedGrid
'ForwardDiagonal
74 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
'The following code shows how to draw hatch 'brushes.
Protected Overrides Sub OnPaint(ByVal e As _
System.Windows.Forms.PaintEventArgs)
Dim g As Graphics = e.Graphics
Dim hBrush1 As HatchBrush = New
HatchBrush(HatchStyle.DiagonalCross, _
Color.Chocolate, Color.Red)
Dim hBrush2 As HatchBrush = New
HatchBrush(HatchStyle.DashedHorizontal, _
Color.Green, Color.Black)
Dim hBrush3 As HatchBrush = New _
HatchBrush(HatchStyle.Weave, Color.BlueViolet,_
Color.Blue)
g.FillEllipse(hBrush1, 20, 80, 60, 20)
Dim rect As Rectangle = New Rectangle(0, 0,_ 200,
100)
Dim point1 As PointF = New PointF(50F, 250F)
Dim point2 As PointF = New PointF(100F, 25F)
Dim point3 As PointF = New PointF(150F, 5F)
Dim point4 As PointF = New PointF(250F, 50F)
Dim point5 As PointF = New PointF(300F, 100F)
Dim curvePoints As PointF() = {point1, point2,_
point3, point4, point5}
g.FillPolygon(hBrush2, curvePoints)
End Sub
'Texture Brushes
'The texture brushes provides you to use an 'image as
brush and fill GDI+ objects with the 'brush. The
following code use ¡°myfile.bmp¡± 'as a brush. You
need to define an Image object 'and create brush with
that Image and pass the 'brush into Fill method of
GDI+ objects.
Dim txBrush As TextureBrush
f~wgKv 75 Protected Overrides Sub OnPaint(ByVal e As
System.Windows.Forms.PaintEventArgs)
Dim g As Graphics = e.Graphics
g.FillRectangle(txBrush, ClientRectangle)
End Sub
Private Sub Form1_Load(ByVal sender As _
System.Object, ByVal e As System.EventArgs)_ Handles
MyBase.Load
Dim img As Image = New Bitmap("C:\\myfile.bmp")
txBrush = New TextureBrush(img)
End Sub
'Gradient Brushes
'Gradient brushes are provides more color to 'your
GDI+ objects. By using 'LinearGradientBrush type, you
can blend two 'colors together. The following code
blends red 'and green colors.
Dim g As Graphics = e.Graphics
Dim rect As Rectangle = New Rectangle(50, 30,_ 200,
200)
Dim lBrush As LinearGradientBrush = New _
LinearGradientBrush(rect, Color.Blue, _ Color.Green,
LinearGradientMode.Vertical)
g.FillRectangle(lBrush, rect)
'This like combines blue and green colors -
Dim lBrush As LinearGradientBrush = New _
LinearGradientBrush(rect, Color.Blue, Color.Green,
LinearGradientMode.Vertical)
†WUv wiW Kivi Rb¨ OleDbDataReader e¨envi t
`ªæZ †WUv wiW Kivi †ÿ‡Î OleDbDataReader LyeB cÖ‡qvRbxq GKwU K¬vm| GwU
System.Data.OleDb †bg‡¯ú‡m wWdvBb Kiv nq| myZivs GB K¬vm e¨env‡ii c~‡e©
Avcbv‡K ADO.NET e¨env‡ii c~‡e© GB †bg‡¯úm ms‡hvRb Ki‡Z n‡e| wb‡P GKwU
D`vni‡Yi gva¨‡g Zv †`Lv‡bv n‡jvt
76 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
Imports System
Imports System.Data
Imports System.Data.OleDb
'Sample Code:
'In the sample code, I've used an Access 'database to
read the data. Same well known 'steps.
Create Connection
Open Connection
'Create Command Object
'Call Command's ExecuteReader() to return 'DataReader
and used DataReader to get the 'data.
Try
'construct the command object and open a 'connection
to the Contacts table
Dim cmdString As String = "Select ContactID,_
FirstName, LastName from Contacts"
Dim connString As String = _
"Provider=Microsoft.Jet.OLEDB.4.0;Data _
Source=C:\\contactmanagement.mdb"
Dim myConnection As OleDbConnection = New _
OleDbConnection(connString)
' Open connection
myConnection.Open()
'Create OleDbCommand object
Dim TheCommand As OleDbCommand = New _
OleDbCommand(cmdString, myConnection)
TheCommand.CommandType = CommandType.Text
'Create a DataReader and call Execute on the 'Command
Object to construct it
Dim TheDataReader As OleDbDataReader = _
TheCommand.ExecuteReader()
While TheDataReader.Read()
f~wgKv 77 System.Console.Write(TheDataReader("ContactID")_
.ToString())
System.Console.Write(" ")
System.Console.Write(TheDataReader("FirstName")_
.ToString())
System.Console.Write(" ")
System.Console.Write(TheDataReader("LastName")_.ToStr
ing())
System.Console.WriteLine()
End While
Catch ae As OleDbException
MsgBox(ae.Message())
End Try
wfwe WU †b‡U †_ªwWs D`vniY t
eBwUi c~‡e©i Aa¨vq¸‡jv‡Z Av‡MB †R‡b‡Qb †h ïaygvÎ wfRyq¨vj †ewm‡Ki WU †bU
fvm©bwUB wd« †_ªwWs-Gi ¯^v` MÖnb Kivi †mŠfvM¨ †c‡q‡Q| wb‡P GKwU D`vni‡Yi gva¨‡g Zv
†`Lv‡bv n‡jv t
Option Strict Off
Imports System
Imports Microsoft.VisualBasic
Imports System.Threading
Class MyThread
Shared Sub main()
Try
'Declare a Thread and Assign it to a Methord Hi
Dim t As New thread(AddressOf hi)
'Declare Another Thread and assign it to Bye
Dim b As New thread(AddressOf bye)
'Set the priority level for each thread
t.Priority = ThreadPriority.Normal
b.Priority = ThreadPriority.Lowest
'Start the thread execution
t.start()
b.start()
Catch e As exception
78 wfRyq¨vj †ewmK WU †bU nv‡Z Lwo
msgbox(e.tostring)
End Try
End Sub
Shared Sub hi()
'Infinite Loop CTRL + C to Exit
Do While True
console.writeline("hi")
Loop
End Sub
Shared Sub bye()
'Infinite Loop CTRL + C to Exit
Do While True
console.writeline("bye")
Loop
End Sub
End Class
Kvjvi †MÖwW‡q›U ˆZwi t
wfwe WU †b‡U Avcwb Lye mn‡RB Kvjvi †MÖwW‡q›U ˆZwi K‡i dg©‡K wdj Ki‡Z cvi‡eb|
Avwg GB D`vnvi‡Y GKwU `yB i‡Oi wjwbqvi †MÖwW‡q›U gyW UvBc †MÖwW‡q›U ˆZwi Kivi
cÖwµqv †`wL‡hwQ|
Protected Overrides Sub OnPaint(ByVal pe As _
PaintEventArgs)
DrawGradient(Color.Blue, Color.Firebrick, _
Drawing.Drawing2D.LinearGradientMode.Horizontal)
End Sub
'The function is:
Private Sub DrawGradient(ByVal color1 As Color, _ ByVal
color2 As Color, ByVal mode As _
System.Drawing.Drawing2D.LinearGradientMode)
Dim a As New System.Drawing.Drawing2D.Linear_
GradientBrush(New RectangleF(0, 0, Me.Width,_
Me.Height), color1, color2, mode)
Dim g As Graphics = Me.CreateGraphics
g.FillRectangle(a, New RectangleF(0, 0, _
Me.Width, Me.Height))
g.Dispose()
End Sub
f~wgKv 79
'You can render text using a similiar method:
Private Sub DrawGradientString(ByVal text as _
String, ByVal color1 As Color, ByVal color2 _ As
Color, ByVal mode As _
System.Drawing.Drawing2D.LinearGradientMode)
Dim a As New System.Drawing.Drawing2D._
LinearGradientBrush(New RectangleF(0, 0, 100,_ 19),
color1, color2, mode)
Dim g As Graphics = Me.CreateGraphics
Dim f As Font
f = New Font("arial", 20, FontStyle.Bold,_
GraphicsUnit.Pixel)
g.DrawString(text, f, a, 0, 0)
g.Dispose()
End Sub
'For this method it is used like this:
DrawGradientString("Hello To You", Color.blue,_
Color.firebrick, _
Drawing.Drawing2D.LinearGradientMode.Vertical)