Visual Basic.NET - 1. diel

Peter Hrdlica  /  10. 12. 2009, 08:31

Vitajte pri novom seriáli zameranom na programovacie techniky pre Visual Basic.NET. Programovanie si vysvetlíme na názorných príkladoch sprevádzanými obrázkami v potrebnej miere.

Úvod

Vítam Vás pri novom seriáli zameranom na programovanie vo Visual Basic.NET (VB dot net). Jedná sa o objektovo orientovaný programovací jazyk, ktorý je už niekoľkým pokračovaním DOSového jazyka BASIC (Beginners' All-purpose Symbolic Instruction Code = začiatočnícky všeúčelový symbolický inštrukčný kód). Kým sa jazyk dostal až sem podstúpil mnoho zmien, od pridaných funkcií až po zmeny syntaxe. Verzia VB.NET 2008 (v poradí sa jedná o verziu s označením VB 9.0), bola vydaná spolu s balíkom Microsoft .NET Framework 3.5. Ten je nevyhnutnou súčasťou potrebnou na správny chod a podporu aplikácií.

            Voľne dostupnú verziu VB.NET 2008 Express Edition možno stiahnuť priamo na stránkach Microsoftu na adrese http://www.microsoft.com/express/vb/Default.aspx. Jedná sa o základný balík vývojového prostredia, ktorý však podľa novej politiky Microsoftu je možné použiť aj na vývoj aplikácií za komerčným účelom. Viac info na tejto adrese http://www.microsoft.com/express/support/faq/


História tutoriálov a "hello, world"

            V roku 1974 v knihe „The C Programming Language“ použil Brian Kernighan ako prvú lekciu program, ktorý na obrazovku vypísal slová "hello, world". Od tej chvíle sa to stalo akousi tradíciou a aj napriek tomu, že my sa budeme venovať Form-based (oknovým) aplikáciám, dovolím si dodržať tradíciu a preto si otvoríme nový projekt FILE –> NEW PROJECT a vyberieme Console Application, pomenujeme si ju napr. helloworld a stlačíme OK.

 

 

V prípade, že máte upgradnutú verziu a projekt sa neotvorí okamžite, objaví sa Vám nasledovné okno a upozorní Vás na možné bezpečnostné riziká pri otváraní neznámeho zdrojového kódu. My však projekt začíname a neotvárame a teda je v podstate jedno, ktorú z možností vyberiete, ja som si však zvykol používať druhú možnosť Load project normally.
 


 

Pred sebou uvidíme nasledovné:


 

Module Module1
    Sub Main()

    End Sub
End Module

 

A teda medzi deklaráciu a ukončenie hlavnej funkcie Main pripíšeme:


Console.WriteLine(“hello, world”) – týmto príkazom povieme, aby sa do konzole – Console napísal riadok – WriteLine obsahujúci text „hello, world“


Dostaneme teda nasledovné:


Module Module1

    Sub Main()

        Console.WriteLine("hello, world")

    End Sub

End Module


Program spustíme klávesom F5, kliknutím na zelený trojuholníček v paneli rýchleho prístupu označený ako Start Debugging, alebo cez menu Debug –> Start Debugging. Ale čože sa to stalo? Niečo malé čierne urobilo blik a to je všetko? Niečo sme snáď spravili nesprávne? Vôbec nie! Program funguje ako má, vykonal čo sme mu prikázali a vypol sa. Ale nám to nestačí! My chceme vidieť výsledok! Ľahká pomoc. Pripíšme si ešte jeden riadok kódu.


Console.Read()  - týmto prikážeme konzole, aby čítala z klávesnice -  a keďže sme nezadali žiadny ďalší parameter, tak ona bude jednoducho čakať na akýkoľvek vstup.


Náš kód teda bude vyzerať nasledovne:


Module Module1

    Sub Main()

        Console.WriteLine("hello, world")

        Console.Read()

    End Sub

End Module


Opäť program spustíme a hľa! Vidíme okno konzoly s nápisom „hello, world“.

Toľko k histórii i konzolovým aplikáciám. K podrobnejšiemu vysvetleniu zátvoriek na konci príkazu, alebo prečo je text hello world v úvodzovkách sa dostaneme neskôr. Pokochajte sa teda ešte raz vlastným výtvorom a poďme smelo ďalej.

 

 

Ak chceme program uložiť, klikneme na tri diskety na paneli rýchleho spustenia označené ako Save all, použijeme klávesovú skratku Ctrl+Shift+S, alebo cez menu File –> Save all. Tu si už sami zvoľte názov projektu, ale i umiestnenie kam ho chcete uložiť.



 

Úvod do objektovo orientovaného programovania

Už sme si ukázali ako vyzerajú konzolové aplikácie na jednoduchom príklade. Našim cieľom je však naučiť sa programovať Form-based (oknové) aplikácie. Otvorme si teda opäť nový projekt (už viete ako) a vyberieme možnosť Windows Forms Application. Na obrazovke sa nám ukáže nasledovné.
 


 

Vysvetlivky:

  1. formulár - okno programu, na ktoré budeme kresliť ovládacie prvky
  2. pracovná plocha
  3. prehliadač okien, modulov, knižníc, zdrojov, .. použitých v projekte
  4. okno s vlastnosťami ovládacích prvkov
  5. chybový list – ponúkne nám informácie o nedokonalosti a chybách nášho kódu
  6. výsuvná lišta s ovládacími prvkami, ktoré budeme kresliť na formulár


Kreslenie prvkov a ich úprava

Ak ste sa už podrobne zoznámili s prostredím, vysuňte lištu s ovládacími prvkami a označte prvok s obrázkom tlačidla a nápisom Button. Nakreslite tento prvok na ľubovoľné miesto na formulári. Ak sa Vám na prvý krát nepodarí nakresliť ho správnej veľkosti, nezúfajte. Opäť na neho raz kliknite a ťahaním za vedúce body môžete znovu upraviť jeho veľkosť. Jeho umiestnenie upravíte ak ľavé tlačidlo myši stlačíte, budete držať a budete ňou pohybovať. Iste si všimnete, že v istej situácii sa Vám na formulári ukážu modré vodiace čiary, tie sú tam na to, aby ste vedeli väčšie množstvo prvkov perfektne zarovnať. Vyskúšajte si to napr. tak, že posuňte tlačidlo k niektorému okraju formulára, alebo si nakreslite nový prvok (kľudne znovu tlačidlo) a skúste ho zarovnať k prvému no na opačnej strane formulára.


Vlastnosti prvkov

Označte formulár a pozrite sa do okna s vlastnosťami, označte tlačidlo a pozrite sa znovu. Keď ich skúsite porovnať, niektoré vlastnosti sú pre oba prvky rovnaké, iné úplne odlišné. Tak to bude so všetkými prvkami. To zaručuje, že každý prvok bude upraviteľný presne podľa Vašich potrieb.

Vyberme si teda ešte raz tlačidlo. V prvom rade sa zameriame na vlastnosť Name. Táto vlastnosť udáva, pod akým menom bude prvok vystupovať. Keďže je predpoklad, že sa môže na formulári ocitnúť viac rovnakých prvkov, nemôžu mať rovnaké meno. Čiže vždy keď budeme v aplikácii pristupovať k prvku tak ho budeme volať menom. Avšak ak chceme na prvku zmeniť nápis, musím upraviť vlastnosť Text. Dá sa upraviť priamo v paneli vlastností (podľa obrázku), alebo dynamicky za behu aplikácie a to formou meno.Text = “test”. Prvku  meno týmto priradíme nápis test.

Určite ste si všimli, že priradený text je v úvodzovkách. Ak by sme tento text to úvodzoviek nedali, program by si myslel, že má pridať obsah premennej test, ale o premenných neskôr.


Handler a udalosť

Udalosť vzniká napr. pohybom myši, stlačením klávesy, spustením programu, minimalizovaním okna ap. Reakciu na udalosť zaistí sám Windows a vy ako programátori. Handler je program, ktorý určuje ako sa aplikácia bude správať pri vzniku udalosti.


Náš prvý handler

Opäť vyberme tlačidlo, no kliknime na neho dva krát. Uvidíte niečo podobné ako je na nasledujúcom obrázku. Akurát deklarácia tlačidla Button1_Click sa môže zmeniť podľa toho aké ste dali tlačidlu meno na VaseMenoTlacidla_Click.


 

Tam, kde Vám bude blikať ukazovateľ pozície vložíme kód. Ako príklad dynamického menenia vlastností prvkov zmeníme nápis tlačidlu, ktoré sme stlačili. Príkaz bude vyzerať takto:


Button1.Text = "klikol si na mna"


Tento krok hádam zvládne každý, kto sa dočítal až sem. Spustíme teda program a klikneme si na tlačidlo. Ak sme všetko spravili správne, výsledok bude takýto:
 


 

Formulár ma implicitne (prednastavené) meno Form1. Zmeňte nápis na ňom ako v paneli vlastností, tak i za behu pri stlačení tlačidla. Rovnakým spôsobom môžete ovládať aj prvok Label, čiže popis.


Spomínané príkazy budú vyzerať nasledovne:


        Label1.Text = "ahoj"

        Me.Text = "tiez zdravim"


Objekt Me reprezentuje Form1. Tento príkaz sa dá napísať aj ako Form1.Text. Nie je chyba to napísať takto, no pri debugovaní (spúšťaní) Vám kompilátor oznámi, že v kóde to je chyba, no ak aj napriek tomu aplikáciu spustíte, bude fungovať správne. Je však zvykom pri zmene vlastností formulára, z ktorého túto zmenu voláme použiť Me. Keby sme však mali dva formuláre, tak tlačidlom na prvom druhému zmeníme vlastnosť cez príkaz názov.vlastnosť, napr.: Form2.Close()


Záver

Ak ste sa dočítali až sem, môžem Vám pogratulovať. Naučili ste sa kresliť užívateľské prostredie i základy syntaxe jazyka VB.NET. Na začiatok toho nie je málo a človek väčšinou potrebuje čas na vstrebanie informácií. Tak pekne vstrebávajte a nabudúce si ukážeme prácu s premennými a ak bude dostatok priestoru, tak si vysvetlíme aj rozhodovacie štruktúry.

Ďakujem za pozornosť a prajem pekný zvyšok dňa.

Peter Hrdlica 

Neprehliadnite: