www.kompongsom4u.blogspot.com ចងក្កងសោយ ៖ លី ឆឆណាក់ ស ិ ៀវសៅបសចេកវទ្យា ទ្យំពរ័ ទ្យ ី 1 VB.NET Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET អារម្ភកថា សំ រាប់ការឆលងកាត់ការសិក្សាអស់ រយះបួនឆ្នក្ស ំ នលងមក្សរបស់ខុ ំបា ្ ទននះ នៅនលើមហាវទាល័ យវទាសាស្តសរ និងបនចេក្សវទានៅសាក្សល ិ ិ ិ វទាល័ យគ្រប់គ្រង នង ្ ទ ដ្ូនចនះន ិ ិ នសដ្ឋក្សច ិ េ នង ិ ការសិក្សាបន្នែមខាងនគ្ៅរបស់ខុ ំបា ើយខ្ុំបាទបានមានរំនត ិ នរៀបចំនសៀវនៅននះន ង ើ រនឺ ្មះ ថា VB.NET រជា ួ ន្ដ្លសំ រាប់នោយនយង ខាន់ណាស់ ចំន ិ ម ិ នី ផេង ។ សំ រាប់ក្សមមវធ ិ នី នះវញមានសារៈសំ ិ ឺ ក្សមមវធ ី យ ើ ក្សនុងការបនងកើតនូវក្សមមវធ ះអនក្ស សិក្សាពត៌មានវទា ិ ជំនាញសរនសរក្សមមវធ ិ ី។ ដ្ូនចនះន ននះ យ ញ្ញ ិ ើ នដ្ើមបជា ី ចំណងដដ្ នពលន្ដ្លខ្ុំបានបញ្េ ប់ក្សំរតបរ ិ ិ ា បគ្ត ពត៌មានវទាក្សន ុ ងឆ្ន ំ ២០១៣ ននះ ខ្ុំបាទបាននរៀបចំនសៀវនៅ ទុក្សជូនបងៗ ឬ បអូន ៗ ជំនាន់នគ្កាយ សិក្សាន្សែងយល់ និងបន្នែមនូវចំនុចខែះខាត់ទង ំ ឡាយណាន្ដ្លខ្ុំមន ិ ទន់ដ្ឹង ។ សំ រាប់ខុ ំមា ្ នអែីន្ដ្លខ្ុំនចះ ខ្ុំនឹងន្ចក្សជូននោយ Download Free នៅនលើនរ ទំពរ័ របស់ខុ ំបា ្ ទ ។ នបើការនរៀបនសៀវនៅននះ មានក្សំ ុ សគ្តង់ ណា សូ មអធាគ្ស័ យផង នង ើ បបនី ោយបានគ្តម ិ ជួយន្ក្សរតគ្មទវទំងអស់នា ន នដ្ម ឹ គ្តទវ ។ ជាចុងនគ្កាយខ្ុំ សូ មជូនពរ នោយអនក្សទំងអស់ នា នមានសុ ខភាពលអជានរៀងរ ូត និង ខិតខំនរៀននោយនគ្ចើន នដ្ើមជាចំន្ណក្សជួយ ដ្ល់សងគមរបស់ន្ផនក្សបនចេក្សវទា ិ នោយមានភាពរក្សចំ ី នរៀនជាងននះនៅនទៀត ។ នង ិ អររុណជានគ្ចន ើ បាននា ំគ្ទខ្ុំបាទ ។ នខតរគ្ពះសី នុ ,ដថ្ទី ២៨ ន្ខ ក្សក្សរដា ឆ្ន ំ ២០១៣ លី ឆៃណាក់ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 2 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ១.១ និយម្ន័យ VB.NET VB.NET គឺ ជាកមមវ ិធី មួយដែលមានតួ នាទីកុងកាសរសសរកមម ន វ ិធីសផេងៗបានលអ និ ងមានការសពញនិ យមកនុង ការយកមកសិកាសៅមហាវ ិទាល័យ មិនដតបុ ស្ណោះវាក៍ មានតួ នាទី ជាសរចើនសទៀតផងដែរ ។ ១.២ របបៀបដំប ង ើ កម្មវិធី VB.NET ១. Double Click សលើ Icon Setup ២. យកពាកយ Install Visual Studio 2008 ៣. រង់ ចាំមួយសភលត សពលវាកាំពុង Run File ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 3 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ៤. ចុចសលើ Button Next ៥. ដាក់ ថិ ក សលើពាកយ I have read and Accept the License Term > Next ៦. សររើ សសរ ើសយកពាកយ Full > ចុ ចសលើ Button Install ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 4 Tel : 070 908 739 www.kompongsom4u.blogspot.com ៧. រងចាំការ ែាំស ស ិ ៀវសៅបសចេកវទ្យា VB.NET ើងចូ លមាសុីនរបស់ > ចុ ច Next > Finish ១.៣ របបៀបបបើកកម្មវិធី VB.NET ១. ចុច Start Button ២. ចុ ច All Program ( windows 7 ) > Microsoft Visual Studio 2008 ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 5 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ១.៤ របបៀបបបងកើត Project ១. ចុចសបើ កកមមវ ិធី Visual Studio 2008 សិន ២. ចុ ចពាកយ File ( Ctrl + N ) > New Project -Name : ជាស្មោះរបស់ Project សយើង ៣. ចុចពាកយ Windows Forms Application > Click OK ១.៥ របបៀបរកា Project ១. ចុចពាកយ File manu ២. យកពាកយ Save Form / Save All ៣. សររើ សសរ ើសទី តាំង Save Project > OK ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 6 Tel : 070 908 739 ស www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា VB.NET ១.៦ លកខណៈ Interface របស់ VB.NET Form Solution Explorer Property Toolbox អតថន័យ -Form : គឺជា Interface មួយសាំរាប់សោយសយើង Design Graphic របស់កមមវ ិធី -Toolbox : គឺ ជាឧបករណ៍សាំរាប់កុងការ ន Design សលើ Form -Property : គឺ ជាកដនលងមួយសាំរាប់ ដកវដរបរសៅសលើ Toolbox និ មួយៗ -Solution Explorer :គឺ ជាកដនលងមួ យសាំរាប់បង្ហាញសោយសឃើញពី Project របស់សយើង ១.៧ របបៀបកំណត់ Form Run ម្ុនដំបូងបេ រតង់ កដនលងសនោះវាមានសារៈសាំខាន់ ដែរ មុ នសពលដែលសយើងសបើ កកមមវ ិធីមក សតើ សយើងចង់ សបើក Form មួ យ្មុ នសគ ។ ែូ សចនោះខាងសរកាមសនោះជារសបៀបសធវើរបស់វា ៖ ១. ចុចសលើពាកយ Project Menu ២. យកពាកយ Windows Application Property ៣. ចុចផ្លលស់បូររតងរបអប់ ត Startup Form វារួចជាការសរសច ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 7 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ១.៨ របបៀបដំបណើរកម្មវិធីដដលបានបធវើ សៅសពលដែលសយើងបានកាំណត់ Form ្មួ យបង្ហាញមុ នសគស ើយ សយើងរតូវចុ ចវាសោយែាំ សណើរការ ។ ខាងសរកាមសនោះជារសបៀបសធវើ ៖ ១. ចុចសលើសញ្ញារពួញសៅមុ ខ ពណ៌បបតង ( រូបខាងសរកាម ) ១.៩ របបៀបចាកបេញពីកម្មវិធី ១. ចុចសលើពាកយ File Menu ២. ចុចសលើពាកយ Exit ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 8 Tel : 070 908 739 ស www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា VB.NET ២.១ លកខណៈ Toolbox សៅកនុងកមមវ ិធី ្ក៍ សុទស ធ ឹងដតមាន Toolbox ជានិ ចចសរពាោះវាមានសារៈសាំខាន់្ស់កុងការបសងក ន ើតអវីមួយ កនុងកមមវ ិធីសនាោះ ។ ែូ សចនោះកមមវ ិធី Visual Studio 2008 សនោះវ ិញក៍ មាន Toolbox ដែរ ។ Toolbox មានែូ ចជា -textbox -button -Label -Combo box -Checkbox -សផេងៗ ខាងសរកាមសនោះជាតួ នាទី របស់ Toolbox និ មួយ ៗ ឧបករណ៍ អធិបាយ -Button ជាឧបកណ៍សំរាប់បង្កើត Button -Label ជាឧបកណ៍សំរាប់បង្កើត ង្មោះ ឬ សរងសរអកសរងលើ Form -Combo box ជាឧបកណ៍សំរាប់ ង្រើ សងរ ើសមានស្រាប់ ទិននន័យ ( Male or Female ) -Textbox ជាឧបកណ៍សំរាប់បញ្ូជ លទិ នន ន ័យ -List box ជាឧបកណ៍សំរាប់បង្ហាញទិ នន ន ័ យកនុ្ List box -Radio Button ជាឧបកណ៍សំរាប់បង្កើត Radio Button -Timer ជាឧបកណ៍អកសររត់ ឬកំ ណត់ ងមា៉ោ ្ -ListView ជាឧបកណ៍សំរាប់បង្ហាញទិ នន ន ័ ងេញពី Database ឬ ពី អីងវ ផស្ងទៀត -DateTimePicker ជាឧបកណ៍បង្ហាញកាលបរ ិងឆេត ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 9 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧបករណ៍ ២.២ Solution Explorer Solution Explorer គឺ ជាកដនលងមួ យសាំរាប់ បង្ហាញពី Project ឬ Form ឬ Module ទាំងអស់ដែលមាន សៅកនុង Project របស់សយើង ។ ខាងសរកាមសនោះជា Project មួ យដែលមាន Form ជាសរចើន ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 10 Tel : 070 908 739 ិ ៀវសៅបសចេកវទ្យា ស www.kompongsom4u.blogspot.com VB.NET ២.៣ Property Object Property គឺ ជា Object ដែលសរបើ សាំរាប់ដករដរប សៅសលើ Toolbox ្មួ យ ។ ខាងសរកាមសនោះជាឧទរ សៅសលើ Button ។ បញ្ញ ា ក់ Property របស់ Toolbox នី មួយមានលកខណៈខុ សគ្នន ។ ខាងសរកាមជាឧទរ ណ៍ ណ៍ Property របស់ Textbox មួ យ ៖ Property ដែលសំខាន់ ៗង្បើ -Name : សាំរាប់ ដាក់ ស្មោះសោយ Textbox -BackColor : សាំរាប់ ដាក់ ពណ៍សោយ Textbox -ForeColor : ពណ៍អកេរកនុង Textbox -Font : សាំរាប់ បូរសា ត ា យអកេរ ទាំ ចងក្កងសោយ ៖ លី ឆឆណាក់ ាំ ពណ៍ កនុង Textbox ទ្យំពរ័ ទ្យ ី 11 Tel : 070 908 739 ិ ៀវសៅបសចេកវទ្យា ស www.kompongsom4u.blogspot.com VB.NET ៣.១ អបថរ សយើងែឹងថាការសរសសរកមមវ ិធី និមួយៗ មិនថាភាសា HTML , JAVA សទ ដត VB.NET ក៍ មានែូ ចគ្ននដែរ ។ សាំរាប់ ការរបកាសអសថរ វាមានសារៈសាំខាន់កុងការរកាទុ ន កតបមលរជាបស្ ត ោះោសននសពលកមមវ ិធីែាំសណើរការ ។ ែូ ចសនោះខាងសរកាមសនោះជារូមនតបនការរបកាសសថរ រូបមនតទី ១ សូមបញ្ជាក់ ៖ Keyword ViablieName As Data_Type Ex. Dim រូបមនតទី ២ Keyword ViablieName1, ViablieName1 As Data_Type Ex. Dim -Keyword as string str , n as string : សំរាប់កណ ំ ត់ពរី បបៀបប្បី បអាយអបេរប ាោះ មា ដូចជា (Public , Static , Dim , -Viable Name -As str Private ) : ប ្ាោះអបេរ : កំណត់្បបេទ Data_type បទៅបអាយអបេរ -Data_Type : ជា្បបេទទិ ន យ ័ របស់អបេរ Ex. -Public a as integer -Dim a as string -private k as long េំណំ ៖ សំរាប់អបេរដដល្បកាសកនុង General Declaration គឺជា Static Variable ៣.១.១ ដដនកំណត់របស់អបថរ ( Scope Of Variable ) បដើមបី្បកាសអបេរបអាយបា ្តឹម្តូវ បយីង្តូវកំណត់ដដ កំណត់របស់អបេរបអាយបា ្តឹម្តូវ (Life time Variable ) បតីអបេរវាមា ដដ រកសាតម្មៃបា ្តឹមណា។ ដូចដគបា ដចកជា ៥ របបៀបម្ ការ្បកាសអបេរ គឺ -Global Variable -Global Friend Variable -Module Level Variable -Dynamic local Variable -Static Local Variable ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 12 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ខាងប្កាមប ោះជារបបៀបម្ ការ្បកាសអបេរ ីមួយៗ ៣.១.១.១ ការប្បកាសអបថរជា Global Variable អតថ ័យម្ ការ្បកាសអបេរជា Global Variable ៖ -បគ្បកាសវាប ៅ Standard Module ( Code ) - Keyword ជា Public - Scope របស់វាគឺ ប្បីបា ្គប់ Form កនង ុ Project - Life Time : ប ៅបពលបញ្ចប់ Application -Ex. Public a as integer ៣.១.១.២ ការប្បកាសអបថរជា Global Friend Variable អតថ ័យម្ ការ្បកាសអបេរជា Global Friend Variable ៖ -បគ្បកាសវាប ៅ Standard Module ( Code ) - Keyword ជា Friend - Scope របស់វាគឺ ប្បីបា ្គប់ Form កនង ុ Project - Life Time : ប ៅបពលបញ្ចប់ Application -Ex. Friend ak as String ៣.១.១.៣ ការប្បកាសអបថរជា Module Level Variable អតថ ័យម្ ការ្បកាសអបេរជា Module Level Variable ៖ -បគ្បកាសវាប ៅ Standard Module , Form Module ,Class Module - Keyword ជា Private / Dim - Scope របស់វាគឺ ប្បីបា ដតកនុង Module ដដល្បកាស - Life Time : ប ៅបពលបញ្ចប់ Application -Ex. Dim/Private c as String ៣.១.១.៤ ការប្បកាសអបថរជា Dynamic Local Variable អតថ ័យម្ ការ្បកាសអបេរជា Dynamic Local Variable ៖ -បគ្បកាសវាប ៅកនង ុ Procedure ( Sub Procedure , Function Procedure) - Keyword ជា Dim - Scope របស់វាគឺ ប្បីបា ដតកនុង Procedure ដដល្បកាស - Life Time : ប ៅបពលបញ្ចប់ Application -Ex. Dim c as String ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 13 Tel : 070 908 739 ស www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា VB.NET ៣.១.១.៥ ការប្បកាសអបថរជា Static Local Variable អតថ ័យម្ ការ្បកាសអបេរជា Static Local Variable ៖ -បគ្បកាសវាប ៅកនង ុ Procedure ( Sub Procedure , Function Procedure) - Keyword ជា Static - Scope របស់វាគឺ ប្បីបា ដតកនុង Procedure ដដល្បកាស - Life Time : ប ៅបពលបញ្ចប់ Application -Ex. Static c as String ៣.១.២ លកខណៈឆនការប្បកាសអបថរ ការ្បកាសអបេរមួយមិ ដម ជាការ្បកាសបលង បលង ប ាោះបទ ។ វាលកខណៈដូចជា ៖ - មិ ្តូវ្បកាសអបេរបអាយដូច Keyword ( dim , Private , Static ,...) - មិ ្តូវ្បកាសអបេរជាបលខ (223) - មិ ្តូវ្បកាសអបេរជាដកឃ្ៃា បបីចងដងឃ្ៃា្តូវដាក់ Under Score ( a ad គឺ a_ad ) - មិ ្តូវ្បកាសអបេរជាសញ្ញា (‘’&($#) - ការ្បកាស្តូវដាក់ Keyword មុ ប ទាប់មក ប ្ាោះអបេរ ប ទាប់មក As ប ទាប់មក Data_type ៣.២ ប្បបេទទិននន័យ ( Data_Type ) ៣.២.១ និយម្ន័យ ្បបេទទិ ន ័យ គឺជាសំណទ ុំ ិ ន ័យដដលបគប្បីសំរាប់កណ ំ ត់លកខណៈអបេរមួយ ឬ ប្ចី គឺ្តូវប្វីប ង ី បដាយភ្ជជប់ជាមួយ្បបេទទិ ន ័យសំរាប់កណ ំ ត់លកខណៈអបេរប ាោះ ៣.២.២ ប្បបេទទិនននយ ័ ្បបេទទិ ន ័យមា ខាងប្កាមប ោះជា្បបេទទិ ន យ ័ ្បបេទទិ ន ័យ ចំ ួ ។ ការ្បកាសអបេរ ៨ ដដលបគប្ចី ប្បីញឹកជាងបគ កនុង្គប់ភ្ជសា ដូចជា VB.net , HTML ...។ ិងទំហរំ បស់វា ៖ ទំហំ ចំ ួ /តម្មៃអាចផ្ទុក Byte 8-bit 0 Through 255 Short 16-bit -32,768 to 32,768 Integer 32-bit -2,147,483,648 to 2,147,483,648 Single 32-bit -3,4028235E38 to 3,4028235E38 Long 64-bit -9,223,372,036,854,775,808 to 9,223,372,036,854,775,808 Double 64-bit -1,7976931348621E308 to 1,7976931348621E308 Char 16-bit any Unicode symbol in the range Boolean 16-bit true or False ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 14 Tel : 070 908 739 www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា ស VB.NET ខាងប្កាមប ោះជាឧទារហណ៍ម្ ការការ្បកាសអបេរ ជា្បបេទទិ ន យ ័ ិមួយៗ ១. ជា Byte , Integer , Long ២. Single, Double ឧទារហណ៍ ១ ឧទារហណ៍ ២ ៖ បគដឹងេា្កុមហុ មួយមា បោលការណ៍ប្វីការចំ ួ បមាងចំ ួ ៨ បមាងកនុងមួយម្េៃ បដាយ្បាក់ ២០ $ ។ ្បសិ បបីបុគគលិកណាប្វីការបលីសពី ៨ បមាង កនុងមួយម្េៃ បគគិត្បាក់បដ ថមចំ ួ ការដេម ២០ % បដាយមិ គិត្បាក់បមាងបដ ម ថ អវទ ី ាំអស់ ។ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 15 នួលកនុងមួយ ១បមាង ២០ $ ិង Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា ឧទារហណ៍ ៣ ៖ ចូលសរបសរកម្វិ្ី បូក ដក គុណ ដចក ម្ ពី ចំ ួ VB.NET ខាងប្កាម Code : ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 16 Tel : 070 908 739 www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា ស ឧទារហណ៍ ៤ ៖ ចូលសរបសរកម្វិ្ី បូកសរុបព ធុក VB.NET ិងម្យមភ្ជគសិសសតាមមុខវិជជា Code : ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 17 Tel : 070 908 739 www.kompongsom4u.blogspot.com ឧទារហណ៍ ៥៖ ចូលសរបសរកម្វិ្ីរកចំ ួ ស ិ ៀវសៅបសចេកវទ្យា VB.NET ស ៃឹកលុយដុលៃា Code : ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 18 Tel : 070 908 739 www.kompongsom4u.blogspot.com ឧទារហណ៍ ៦៖ ចូលសរបសរកម្វិ្ីរកចំ ួ ស ិ ៀវសៅបសចេកវទ្យា VB.NET គិតបមាងខាងប្កាម Code : ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 19 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ៤.១ និយម្ន័យ Control Structure គឺបគ្តូវបា បគកំ ត់េា ជាការ្តួតពិ ិតយដដលមា រច ាសមព័ ធលកខខ័ណឌ ដដលលកខខណ ័ ឌ ប្វីការ ដដដលៗ បបីករណីពិតបទីបអ ុវតត ៍ Statementបបីវាមិ ពិត វាមិ អ ុវតត ៍ Statement ប ាោះបទ គឺ Program សំរាប់កនុងភ្ជសា VB.NET វិញ Control Structure មា ចំ ួ ដដលសំខា ់ ិងចាកបចញ។ ១. if Statement ២. if else Statement ៣. if else_if Statement ៤. Select Case Statement ៤.១.១ កាបប្បើ IF STATEMENT បបីសិ Expression ពិត (Expression មា តម្មៃមិ បស្ីសូ យ ) Statement ្តូវបា អ ុវតត ៍ ដតផ្ទយ ុ បទៅវិញបទៅវិញ បបី Expression មិ ពិត ( Expression មា តម្មៃបស្ីសូ យ ) វា ឹងអ ុវតត ៍ Statement 2 ។ ដូបចនោះ if Statement មា Syntax ដូចខាងប្កាម ៖ ឧទារហណ៍ ១៖ ចូលសរបសរកម្វិ្ីរកចំ ួ ចងក្កងសោយ ៖ លី ឆឆណាក់ ្ំជាង ម្ ពីចំ ួ ទ្យំពរ័ ទ្យ ី 20 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ២៖ ចូរសរបសរកម្វិ្ីរកចំ ួ ដចក បទៅបលីលកខខ័ណឌតួដចកបស្រី ០ ៤.១.២ កាបប្បើ IF ESLE STATEMENT សំរាប់ If else Statement វិញ វាមិ ខុសពី If Statement បុ ្ា បទ ្ោ ដ់ តវាមា Expression1 ពិត ្តូវបា អ ុវតត ៍ Statement1 ទី២ អត់ ដតបបីសិ ដូបចនោះ if Statement មា Syntax ដូចខាងប្កាម ៖ Else ដេមទត បបីសិ Expression1 ខុស្តូវចូល Statement 2 ។ ឧទារហណ៍ ១៖ ចូរសរបសរកម្វិ្ីរកចំ ួ ដចក បទៅបលីលកខខ័ណឌតួដចកបស្រី ០ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 21 Tel : 070 908 739 www.kompongsom4u.blogspot.com ឧទារហណ៍ ២៖ ចូលសរបសរកម្វិ្ីរកចំ ួ ស ិ ៀវសៅបសចេកវទ្យា ្ំជាង ម្ បីចំ ួ VB.NET បដាយប្បី if else Statement ទារហណ៍ ៣៖ ចូលសរបសរកម្វិ្ីរកចំ ួ ម្េៃបងអគគីស ី ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 22 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ៤.១.៣ កាបប្បើ IF ESLE-IF STATEMENT ខ័ណឌប្ចី if – else_if Statement : ្តូវបា ប្បី្បាស់ដូច if-else statement បគ្តូវបា បគប្បី្បាស់វាសំរាប់ដាក់លកខ ( បលីសពី ២ ) ។ទំរងទូបទៅរបស់ម្ if-else-if Statement ដូចខាងប្កាម ៖ ឧទារហណ៍ ១ ឧទារហណ៍១ ៖ ចូលសរបសរកម្វិ្ីបូកសរុប្បាក់ដខជា្បចាំសបាតហ៍របស់បុគគលិតមនាក់ បដាយមា ការ បដ ម ថ បមាងបស្រី ២ ដងម្ បមាងការងារ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 23 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET Code : Private Sub bntPayroll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntPayroll.Click Dim MonH, TueH, WedH, ThuH, FriH, SatH, SunH, OT As Integer Dim HourlyRate, TotalPay As Single HourlyRate = Val(txtHR.Text) MonH = Val(txtMon.Text) TueH = Val(txtTue.Text) WedH = Val(txtWed.Text) ThuH = Val(txtThu.Text) FriH = Val(txtFri.Text) SatH = Val(txtSat.Text) SunH = Val(txtSun.Text) OT = 0 If MonH > 8 Then OT = OT + (MonH - 8) MonH = 8 End If If TueH > 8 Then OT = OT + (TueH - 8) TueH = 8 End If If WedH > 8 Then OT = OT + (WedH - 8) WedH = 8 End If If ThuH > 8 Then OT = OT + (ThuH - 8) ThuH = 8 End If If FriH > 8 Then OT = OT + (FriH - 8) FriH = 8 End If OT = OT + SatH + SunH TotalPay = (MonH + TueH + WedH + ThuH + FriH) * HourlyRate + (2 * HourlyRate * OT) txtOTH.Text = OT & "Hours" txtTP.Text = Format(TotalPay, "$#,##0.00") End Sub ឧទារហណ៍ ២ ៖ចូលរក ិប ស ទ សិសស ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 24 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ៤.១.៤ កាបប្បើ SELECT CASE STATEMENT ចំបពាោះ Select Case វិញមា ក៍មា ដំបណីរការមិ ខុសពី If else , if else if Statement ផ្ងដដរ ។ ខាងប្កាមប ោះជារូមប តកនុងការបបងកើត Select Case ៖ ឧទារហណ៍ ១ ៖ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 25 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ២ ៖រក ិប ទសសិសស បដាយប្បី Select Case ឧទារហណ៍ ៣ ៖រក ិប ទសសិសស បដាយប្បី Select Case ប្ចីការវាយបញ្ជូល បដាយកនង ុ ចប ៃាោះ ១. ពិ ទុក ០-៥៩ បងហាញសារជា Need to work harder ២. ពិ ទុក ៥០-៥៩ បងហាញសារជា Average ៣. ពិ ទុក ៦០-៦៩ បងហាញសារជា Above Average ៤. ពិ ទុក ៧០-៨៤ បងហាញសារជា Good ៥. ពិ ទុក ៨៤-១០០ បងហាញសារជា Excellence ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 26 Tel : 070 908 739 www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា ស VB.NET ៥.១ និយម្ន័យ ប ៅកនុងដផ្នកប ោះ បយីង ឹងបងហាញពីដំបណីរការ Repeat Statement ឬ មួយ Block Statement បដាយប្បី លកខណៈអវីមយ ួ បហៅេា Loop ។ កនុងភ្ជសា C Loop មា បី ្បបេទ គឺ ៖ ១. While Loop Statement ២. do_while Loop Statement ៣. For Loop Statement Loop គឺជា្កុមម្ Instruction Computer មួយដដល សកម្ភ្ជពរបស់វាដដដរៗ បដាយបោរពតាមោះបេរ ពិបសសណាមួយប ៅបពលដដល Control Variable ប ៅដតពិត ។ ៥.១.១ .While Loop Statement ជាដំបង ូ While Loop បា ្តួតពិ ិតយបមីល Expression បបីសិ វាពិត ប ាោះ Statement របស់ While Loop ្តូវាបា អ ុវតត ៍( Execute ) រួចវាក៍បទៅពិ ិតយបមីល Expression មតងបទៀត បបីសិ ជាវាប ៅដតពិត ប ាោះ Statement ឬ Block Statement របស់វាប ៅដត Execute ដដដរ រហូតដល់ Expression មិ ពិត ។ បញ្ជាក់ ៖ សំរាប់ while Loop ប ោះ ដំបណីរការរបស់វាគឺ វាបទៅពិ ត ិ យបមីលកខខណ ័ ឌ ជាមុ សិ បា វាអ ុវតត ៍ Statement ឧទារហណ៍ ១ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 27 Tel : 070 908 739 ស www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា VB.NET ៥.១.២ Do While Loop Statement ជាដំបង ូ do While Loop បា Execute មួយ Statement ដដលប ៅមា កនង ុ Loop សិ មុ បមីល Expression ។ បពលវា្តួតពិ ិតយបឃ្ីញេា Expression ប ៅដតពិត ប ាោះ Statement ្តូវបា បទៀតជាប តប ទាប់ រហូតដល់វាពិ ិតយបឃ្ីញេា Expression ដលងពិត ។ ឹងវា្តួតពិ ិតយ Execute មដង ឧទារហណ៍ ១ ឧទារហណ៍ ២ ៖ បពលដដលបយីងបញ្ជូលតម្មៃកនុង Textbox បុ ្ា ចងក្កងសោយ ៖ លី ឆឆណាក់ វា ឹងបងហាញសញ្ញា្ទុង្ជូក ចំ ួ បុ នឹងដដរ ទ្យំពរ័ ទ្យ ី 28 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា ៥.១.៣ For Loop Statement ទំរង់ For loop មា បីកប សាម ។ កប សាមទី មួយ្តូវបា ប្បីសំរាប់កណ ំ ត់តម្មៃដំបង ូ បផ្ទៀងផ្ទាត់េាបតី Loop VB.NET កប សាមទី ២ ប្បីសំរាប់ ិង្តូវប តមដងបទៀត ឬ បទ បហីយកប សាមទី ៣ សំរាប់បតូរតំម្មៃបដើមបី្បតិបតតិប ត ។ ឧទារហណ៍ ១ ឧទារហណ៍ ២ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 29 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ៣ ចូលសរបសរកម្វិ្ី បមបលខគុណ បដាយបញ្ជូលចំ ួ ពី Textbox ៥.១.៤ Goto Statement ប្បីសំរាប់ចាកបចញ បញ្ជូល បដងវល្តួតពិ ត ិ យ បទៅបលី Statement ណាមួយយាងឆាប់រហ័យ ។ វាក៍មា សារៈសំខា ់ ផ្ងដដលម្ ការប្បី្បាស់ Loop ។ ឧទារហណ៍ ១ ខាងប្កាមប ោះគឺជា Code ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 30 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET + DoEvents() Function - - eRbIedIm,IeGaytMeNIrkarGnuvtþn¾ Current process p¥akmYyryHeBlxøIxNHeBl Runtime edIm,Ipþl;karRtYtBinitüeTA O.S . bnÞab;BItMeNIrkarenaHva)anpþlk; arRtYtBinitüeTA Current Process vij. kareRbIR)as; Do Events KWedIm,I Delay Process rbs; Loop . Private Sub bntDoEvents_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntDoEvents.Click Dim i, a As Integer Call Randomize() Do lblNumber.Text =”012” & Int(Rnd() * 1000000) For i = 1 To 3000 Application.DoEvents() Next a = a + 1 Loop Until a > 500 End Sub ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 31 Tel : 070 908 739 ៦.១ និយម្ន័យ Array គឺជាបសរីម្ ិ ៀវសៅបសចេកវទ្យា ស www.kompongsom4u.blogspot.com អបេរដដលមា តម្មៃ តៗ ោនជាលំដាប់មា ប នាោះ VB.NET ិង្បបេទទិ ន យ ័ ដូចោន ដត Index បផ្សងោន Array ប្បី្បាស់ Location របស់ Memory តៗតាមលំដាប់ ។ Index របស់ Array កនង ុ VB.net បគប្បី្បាស់ LBound ( Lower Bound ) index ិង UBound ( Upper Bound ) Index ៕ -LBound : គឺជាតម្មៃ index ដដលមា តម្មៃតូចជាងបគកនុង Array -UBound : គឺជាតម្មៃ index ដដលមា តម្មៃ្ជ ំ ាងបគកនង ុ Array ប ៅកនុង VB.net បគបា ដបងដចក Array ជា្បបេទ្ំ ៗ គឺ Fix Size Array ិង Dynamic Array ៦.២ One Dimensional Array ៦.២.១ Fix Size Array Fix Size Array គឺជា Array ដដលមិ អាចដករដ្បទំហំ ឬ ចំ ួ Location ប ៅខណៈបពល Runtime ។ ១. របបៀបប្បកាស Fix Size Array Ex. Dim MyArray(5) as integer បគ្បកាស Array ដបបប ោះមា -Lbound ម្ Array គឺ = 0 -Ubound ម្ Array គឺ = 5 ័យេា សំោល់ ៖ តម្មៃរបស់ Array គឺចាប់ពី Index ទី សូ យ ម្ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 32 Array Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ១ ឧទារហណ៍ ២ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 33 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ៣ ចូលសរបសរកម្វិ្ីមយ ួ បដាយប្វីការចាប់បឆានត បដាយប្បី Array កនុងប ាោះបយីងប្បី -Listbox បងហាញទិ ន យ ័ -Textbox ការវិលម្ តម្មៃ Array -Button Start សំរាប់ចាប់បផ្តើម្ក ក ុ -Button Stop បញ្ឈប់ការ្ក ុក ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 34 Tel : 070 908 739 ិ ៀវសៅបសចេកវទ្យា VB.NET Dynamic Array គឺជា Array ដដលអាចដករដ្បទំហំ ឬ ចំ ួ Location ប ៅខណៈបពល Runtime ។ www.kompongsom4u.blogspot.com ស ៦.២.២ Dynamic Array បហីយវាមិ ្តូវបា ផ្តលទ ់ ំហបំ ៅបពល្បកាស ។ ១. របបៀបប្បកាស Dynamic Array Ex. Dim DynamiceArray() as Integer ការផ្តលទ ់ ហ ំ ំបអាយបទៅ Dynamic Array គឺ្តូវ្បកាសកនង ុ ខណៈបពលដដល Runtime បដាយប្បី Keyword ដដល Redim ប្បីបា ប ៅកនុង Procedure បទ បហីយវាមិ អាចប្បីធាតុរបស់ Array បា បទ Ex. Dim A() as Integer ReDim A(3) enaHeK)an ³ A(0)=2 A(1)=4 A(2)=10 A(3)=30 ឧទារហណ៍ ១ ចូលសរបសកម្វិ្ីមយ ួ បដាយបញ្ជូលធាតុរបស់ Array ខាងប្កាមគឺជា Code ម្ ការបញ្ជូល ធាតុរបស់ Array ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 35 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET Dim mArray() As Integer 'Dim test() As Integer = {1, 3, 5, 6, 7} Private Sub FrmDynamicArray_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Show() txtAdd.Text = "" txtDisplay.Text = "" txtAdd.Focus() ReDim mArray(0) End Sub Private Sub bntAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntAdd.Click Dim m As Integer m = Val(txtAdd.Text) If m <> 0 Then mArray(UBound(mArray)) = m ReDim Preserve mArray(UBound(mArray) + 1) End If txtAdd.SelectionStart = 0 txtAdd.SelectionLength = Len(txtAdd.Text) txtAdd.Focus() End Sub Private Sub bntShow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntShow.Click Dim i As Integer Dim Str As String For i = LBound(mArray) To UBound(mArray) - 1 Str = Str & "Array(" & i & ")=" & mArray(i) & vbCrLf Next txtDisplay.Text = Str End Sub Private Sub bntExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntExit.Click End End Sub ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 36 Tel : 070 908 739 ិ ៀវសៅបសចេកវទ្យា ស www.kompongsom4u.blogspot.com VB.NET ៦.៣ Two Dimensional Array Two Dimensional Array គឺជា Array មួយដដលមា Row ិង Colum ។ ៦.៣.១ Fix Size Array Ex: Dim mArray(2,3) As Integer Dim B(4,5) As Long Dim Str(2,5) As String បបីបគ្បកាសដបបប ោះ វា ឹងបងហាញដបបប ោះ Dim A(3,4) As Integer A 0 1 2 3 0 A(0,0) A(1,0) A(2,0) A(3,0) enaHeKtagtaragdUcxageRkam³ 1 A(0,1) A(1,1) A(2,1) A(3,1) 2 A(0,2) A(1,2) A(2,2) A(3,2) 3 A(0,3) A(1,3) A(2,3) A(3,3) 4 A(0,4) A(1,4) A(2,4) A(3,4) ឧទារហណ៍ ១ ខាងប្កាមគឺជា Code ម្ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 37 Array Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET Dim mArray( 1, 2) As Integer Private Sub FrmTwoDimensionalArray_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try Dim x As Integer, y As Integer Call Randomize() For x = LBound(mArray, 1) To UBound(mArray, 1) For y = LBound(mArray, 2) To UBound(mArray, 2) mArray(x, y) = 10 + Int(89 * Rnd()) Call lstValues.Items.Add(mArray(x, y)) Next Next Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End Sub Private Sub bntDisplay_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntDisplay.Click Try Dim row As Integer, col As Integer Dim temp As String temp = " Col0 Col1 Col2" Call lstDisplay.Items.Add(Space(6) & temp) For row = LBound(mArray, 1) To UBound(mArray, 1) temp = "Row" & row & " " For col = LBound(mArray, 2) To UBound(mArray, 2) temp = temp & Space(3) & mArray(row, col) & " " Next Call lstDisplay.Items.Add(temp) Next Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End Sub Private Sub bntExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bntExit.Click End End Sub ៦.៣.២ Dynamic Array - Ex: eRbI ReDim nig ReDim Preserve edIm,IRbkas ArrayeLIgvij . kMenIn Index RbRBWteþ TAcMeBaH Dynamic Two-Dimentional Array )anEt Index cugeRkayEtbu:eNÑaH . Dim A() As Intger - ReDim A(2,3) enaHeKTTYl)an³ LBound(A,1)=0 LBound(A,2)=0 UBound(A,1)=2 UBound(A,2)=3 ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 38 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ១ ខាងប្កាមគឺជា Code ម្ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 39 Array Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET Public Class adddynamic_array Dim mArray(,) As String = New String(20, 4) {} Dim i As Integer Private Sub btnadd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnadd.Click Try mArray(i, 0) = txtname.Text mArray(i, 1) = txtstudy.Text mArray(i, 2) = txtclass.Text If RSMale.Checked = True Then mArray(i, 3) = "M" Else mArray(i, 3) = "F" End If mArray(i, 4) = txtfield.Text i = i + 1 Call cleardata() Catch ex As Exception End Try End Sub Sub cleardata() txtname.Text = "" txtstudy.Text = "" txtclass.Text = "" txtfield.Text = "" RSFemal.Checked = False RSMale.Checked = False txtname.Focus() End Sub Private Sub btnshow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnshow.Click Try If i < 0 Then MsgBox("Benning recode", MsgBoxStyle.Exclamation, "Recode") End If txtname.Text = mArray(i - 1, 0) txtstudy.Text = mArray(i - 1, 1) txtclass.Text = mArray(i - 1, 2) If mArray(i - 1, 3) = "M" Then RSMale.Checked = True Else RSFemal.Checked = True End If txtfield.Text = mArray(i - 1, 4) i = i - 1 Catch ex As Exception MsgBox(ex.Message) End Try End Sub Private Sub txtfield_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtfield.TextChanged End Sub End Class ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 40 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET សំរាប់ Procedure វិញ ប ៅកនុង Standard Module ភ្ជគប្ចី មា លកខណៈជា Public ( ដដលបគអាច Call យកបទៅប្បី្គប់ទក ី ដ ង ៃ ម្ Project ) ។ សំរាប់កនុង VB.NET បគបា ដបងដចក Procedure ជាដផ្នក្ំ ៗ - Sub Procedure (Sub Program) - Function Procedure ៧.១ Sub Procedure កនុងការសរបសរកម្វិ្ភ្ជ ី គប្បី អនកសរបសរកម្វិ្ី ដតងដតជួប្បទោះ ូវដផ្នកខវោះខាតម្ កម្វិ្ដី ដលត្តូវបា បគប្បី ្បាស់ជាញឹកញាប់ បហីយវាទាំងប ាោះមា ទីតាង ំ បផ្សងៗោន ម្ កម្វិ្ីដដលបណតាលបអាយសបសរកម្វ្ ិ ីមា ទំហំ្ំ ្ពមទាំង បបងកើតភ្ជញស្ុគស្ាញចំបពាោះការសរបសរកម្វិ្ី ។ ចឹងបហីយបដើមបីបដាោះស្សាយ ិងបជៀសបវៀង ូវបញ្ហាខាងបលីប ោះ គឺបគ្តូវផ្ៃាស់បរតូ ដផ្នក្ចំដដលទាំងប ាោះ ។ ការផ្ៃាស់ បទូរប ោះបគបហៅេាកម្វិ្ត ី ូច ឬ Function កម្វិ្ត ី ូចៗ ៧.១.១ របបៀបឆនការប្បកាស Sub Procedure របបៀបទី ១ ឧទារហណ៍ ១ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 41 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET របបៀបទី ២ ឧទារហណ៍ ១ ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 42 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា ឧទារហណ៍ ២ ចូលសរបសរកម្វិ្ីមយ ួ រកចំ ួ ដដលតូចជាងបគ ម្ ៣ ចំ ួ VB.NET បដាយវាយបញ្ជូលពី Keyboard Private Sub CmdMin_Click() Dim val1 As Long, val2 As Long, val3 As Long val1 = txtVal1.Text val2 = txtVal2.Text val3 = txtVal3.Text Call Minimum(val1, val2, val3) End Sub Private Sub Minimum(min As Long, x As Long, y As Long) If x < min Then min = x End If If y < min Then min = y End If lblMin.Caption = "Min Valus is=" & min End Sub ៧.២ Function Procedure សំរាប់ Function Procedure ប ោះវិញ វាមា លកខណៈមិ ខុសពី Sub Procedure បុ ្ា បទ ្ោ ់ដតរបបៀបប ោះការ ្បកាសខុសោនប តិចប ទួចបុបណ្ាោះ ។ ៧.២.១ របបៀបឆនការប្បកាស FunctionProcedure ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 43 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ឧទារហណ៍ ១ ឧទារហណ៍ ២ Function Mention(Avg As Single) As String Select Case Avg Case Is > 100 Mention = "Invalid" Case Is >= 95 Mention = "Excellent" Case Is >= 85 Mention = "VeryGood" Case Is >= 75 Mention = "Good" Case Is >= 65 Mention = "Fair" Case Is >= 50 Mention = "Medium" Case Else Mention = "Weak" End Select End Function Private Sub CmdOK_Click() Dim Men As Single Men = Val(txtAvg.Text) txtMention = Mention(Men) End Sub ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 44 Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ៨.១ និយម្ន័យ eyIgGacbegátI RbePTGefredayxøÜneyIg)anenAkñúg Visual Basic edayeRbI Structure keyword. bec©keTsenHKWvamansar³sMxan;. ]TahrN¾dUcCaGñkcg;begáIt record type sMrab;rkSaTinñ½yenAkñgú Files b¤ k¾Gñkcg;eGayTinñ½yEdlman Type epSgKñamksßitenAeRkam Type EtmYyenaHeyIgRtUvbegáIt (Structure) . edIm,IbegáIt Structure , GñkRtUvEteRbI Structure keyword . enHKWCarebobbegáIt Structure : ៨.២ របបៀបប្បកាស KWCaeQµaHén (Structure) . EdleKarBtam smµtki mµeQµaHGefr . - Datamember: KWCaeQµaHrbs;Fatuén (Structure) . EdleKarBtamsmµtikmµeQµaHGefr . - Structure: mineRbICa)a:ra:Em:Rt b¤ Return type rbs; Sub Program or Function )aneLIy . edIm,IeRbI Properties b¤ Data member rbs;eQµaH Structure eKRtUvbegáItb¤RbkasGefréneQµaHStructure. - VarName : ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 45 Tel : 070 908 739 www.kompongsom4u.blogspot.com ចងក្កងសោយ ៖ លី ឆឆណាក់ ស ិ ៀវសៅបសចេកវទ្យា ទ្យំពរ័ ទ្យ ី 46 VB.NET Tel : 070 908 739 www.kompongsom4u.blogspot.com ស ិ ៀវសៅបសចេកវទ្យា VB.NET ៩.១ និយម្ន័យ ្គប់ភ្ជសាទាំងអស់ សុទដធ តមា ការភ្ជជប់បទៅ Database ដូចោន មិ េា ការបបងកើតកម្វិ្ី ឬ តបណតាញ Network ឬ ក៍សរបសរវុប ិ សាយប ាោះបទ ។ ឥលូវប ោះបយីង ឹងភ្ជជប់បទៅ Database របស់កម្វិ្ដី ដលបយីងបា បបងកើត ។ សំរាប់ Database កនុងកាភ្ជជប់បទៅមា ដូចជា ៖ Microsoft Access , MySQL Server 2008 ជាបដើម ៩.២ ការភ្ជាប់ Database បប្បើ MySQL Server 2008 សូមបញ្ជាក់េា បយីងអាចភ្ជជប់បទៅ MySQL Server 2008 បា មា ២ របបៀប ៖ របបៀបទី ១ ៖ គឺបយីងបា ដំប ីងកម្វិ្ី MySQL Sever 2008 កនុងមាសុី របស់បយីង ជាលកខណៈLocal Machine របបៀបទី ២ ៖បយីង្តូវដំប ង ី កម្វិ្ី MySQL Server 2008 កនង ុ Windows Sever ៩.២.១ ការភ្ជាប់ Database បប្បើ MySQL Server 2008 កនង ុ Local Machine ទី ១ ៖ បយីងអាចបបងកើតជា Module មួយ បដាយបយីងសរបសរដូចខាងប្កាម ទី ២ ៖បយីង្តូវសរបសរ កនង ុ Form Load Imports System.Data.SqlClient Public Class Form1 Private MyConnect As SqlConnection Private MyCommand As SqlCommand Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try MyConnection = New SqlConnection("Server=KOMPONGSOM4UPC;Database=student;User id=sa;password=1234") MyConnection.Open() ''txtid.Text = AutoNum() Catch ex As Exception MsgBox(ex.Message) End Try End Sub End Class ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 47 Tel : 070 908 739 www.kompongsom4u.blogspot.com ិ ៀវសៅបសចេកវទ្យា ស VB.NET ៩.២.២ ការភ្ជាប់ Database បប្បើ MySQL Server 2008 កនង ុ Window Server ទី ១ ៖ បយីងអាចបបងកើតជា Module មួយ បដាយបយីងសរបសរដូចខាងប្កាម ទី ២ ៖បយីង្តូវសរបសរ កនង ុ Form Load Imports System.Data.SqlClient Public Class Form1 Private MyConnect As SqlConnection Private MyCommand As SqlCommand Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try MyConnection = New SqlConnection("Server=IP Server;Database=student;User id=sa;password=1234") MyConnection.Open() Catch ex As Exception MsgBox(ex.Message) End Try End Sub End Class ៩.៣ ការភ្ជាប់ Database បប្បើ Microsoft Access ចំដ កឯការភ្ជជប់បទៅ Database Microsoft Access គឺមា លកខណៈមិ ខុសពី MySQL Server ប ាោះបទ ។ ខាងប្កាមប ោះជារបបៀបភ្ជជប់បទៅ Access Imports System.Data Imports System.Data.OleDb Public Class Form1 Dim con As OleDbConnection Dim cmd As OleDbCommand Dim ad As OleDbDataAdapter Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load con = New OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=F:\\HMS.accdb") ad = New OleDbDataAdapter("select * from Jeneralnurses", con) End Sub End Class ចងក្កងសោយ ៖ លី ឆឆណាក់ ទ្យំពរ័ ទ្យ ី 48 Tel : 070 908 739