Programmering:Visual Basic

Fra Wikibooks, den frie samling af lærebøger
Gå til: navigation, Søg

Introduktion[redigér]

Visual Basic (VB) er et programmeringssprog, der er nemt at bruge, da det er en slags trejde-(eller fjerde-)generations programmeringssprog. Det vil sige, at det skal igennem en kompiler før computer kan forstå det i dens sprog. Samtidigt er det forholdsvis nemt at gå til for almindelige brugere. Det kræver dog også flere ressourcer fra computerens side. Men nu til dags udgør computerens ressourcer ikke noget problem.

Hvis du tænker på at finde et sprog til at lave spil eller andre meget krævende programmer er det nok bedst at begynde på C++ eller lignende, da C++ stadig er det bedste og mest brugte inden for faget.

Hvordan man bruger GUI[redigér]

Todo: intro til GUI - hvad er det?

Øverst ses en menubjælke hvor man har adgang til de fleste ressourcer og ting i Visual Basic. Til højre ses en Toolbox (værktøjskasse) hvori man har adgang til nogle komponenter i VB. Man kan trykke på disse og derved tilføje dem i sit arbejdsvindue (der i programmet kaldes "Form"). Form "Arbejdsvinduet" er en GUI-version af, hvad brugeren vil komme til at se, når det program, du er ved at lave, bliver kørt. Det er altså Vinduet du vil blive præsenteret for som du gør ved andre programmer. Til er en oversigt over egenskaberne for de ting du evt. har indsat i form. Det kan også være egenskaberne for selve formen. Her kan alle de variabler, der ses, blive ændret i koden du vil skrive, eller de kan ændres direkte i koden.

Menubjælken[redigér]

Variable[redigér]

En variabel er et sted hvor vi kan gemme noget data til videre bearbejdning.

For objektorienteret programmering (OOP) bruger man Class

For at definer en variabel bruger man

    Dim varTal as byte
    dim varBogstav as string

Du kan bruge følgende til at definere en variabel

  • Byte
  • Boolean
  • Integer
  • Long
  • Currency
  • Single
  • Double
  • Date
  • String

For at omdefinere en variabel bruger man

    reDim 

Typisk skiver man Option explicit øverst i sin form i Visual Basic.

Dette gøres fordi så skal man ikke altid erklære variable for at de kan bruges.

Erklærer man variable i form, function eller procedure vil disse variable kun være tilgængelige der. For at kunne bruge dem overalt, skal de erklæres i et module.

Array[redigér]

Hvad er Array?

Ordret betyder række eller samling og angiver, at man har flere end en variabel i samme navn.

Hvordan definer man en variable.

For at lave et array skal man bare bruge () efter variablens navn.

Eksempel

dim personnavn(100) as string

Her kan du definer 100 person navne.

For at indsætte en værdi et sted i personnavn kan man derved bruge et tal mellem 1 til 100

Eksempel

personnavn(10) = "Jens Hansen"

Skal du så have værdien ud fra variablen gør du det på samme måde

debug.print "Navn: " % personavn(10)

Reserverede ord[redigér]

Der findes mange reserverede ord i Visual Basic, som man skal tage sig i agt for at bruge. Ordene kan være reserverede, fordi de bruges i funktioner eller kommandoer.

Her er en (ikke nødvendigvis komplet) liste over reserverede ord:

    And
    As
    Call
    Do
    Exit
    False
    True
    For
    Function
    GoTo
    If
    Loop
    Me
    Next
    Not
    Nothing
    Option
    Or
    Private
    Public
    Resume
    Step
    Sub
    Then
    Until
    While
    If Then

Der kan være flere...

Løkker[redigér]

En løkke er en måde at få programmet til at gøre ting, indtil den pågældende operation er kørt færdig eller operationen er nået et bestemt punkt. Løkker kan laves på flere måder:

IF[redigér]

En if-løkke bruges til at checke on en bestemt tilstand er sand eller falsk.

Eksempel

    dim Jeg_er_dansk = true
    
    if Jeg_er_dansk=true then
        debug.print "Du er dansker"
    else
        debug.print "Du er ikke dansker"
    end if

Bemærk else den siger at hvis ikke denne tilstand er sandt kan man udføre noget andet.

Det er godt at bruge End if for at afslutte en if-sætning.

Der kan også bruges Select case hvis der er flere valgmuligheder for en given ting.

While/Do[redigér]

Med While eller do kan man lave en ønsket handling så længe en given tilstand stadig er der.

Følgende gør det samme det er bare 2 forskellige måde at lave det på.

Eksempel på en While-løkke

    Dim Counter
    Counter = 0
    While Counter < 10
       Counter = Counter + 1
       Debug.Print "Tæller er nu " & Counter
    Wend

Bemærk: at ved While-løkker slutter man løkken med Wend

Eksempel på en Do-løkke

    Dim Counter
    Counter = 0
    Do
       Counter = Counter + 1
       Debug.Print "Tæller er nu " & Counter
    Loop Until Counter = 10

Bemærk: Ved en Do-løkke slutter man dem med en Loop

For[redigér]

Gentage en ting flere gange indtil et ønsket resultat er kommet

Eksempel på en For.:

    Dim Words, Chars, MyString
    For Words = 10 To 1 Step -1
       For Chars = 0 To 9
          MyString = MyString & Chars
       Next Chars
       MyString = MyString & " "
    Next Words
    
    Debug.Print MyString

,,,,,,,,,,,,

Funktioner/Procedure[redigér]

Forskellen på disse 2 ting er at en Function returnerer et resultat hvor procedure udføre en given handling uden at returnere noget.

Man kan bruge Private eller Public, de har begge to forskellige betydning til hvordan man tilgår funtion eller proceduren.

Private - Så er det kun indenfor den form man har skrevet det at man har adgang til den.

Public - Er offentlig for alle, kan derved bruge overalt.

Funktioner[redigér]

Man laver en funktion således

Private Function convertINTtoSTR(intvar As Integer) As String
    convertINTtoSTR = CStr(intvar)
End Function

Procedure[redigér]

Procedure udføre nogle given handlinger men returner ikke noget.

Private Sub addtoT(s as Integer)
    t = t + s
End Sub

Form[redigér]

ActiveX[redigér]

ActiveX er et navn Microsoft har givet deres komponenter. De har typisk et filefternavn som .ocx, .dll eller .exe.

Eksterne Links[redigér]

Link Kommentar
VBCorLib Do handlinger i VB6
WinsockVB Alt hvad der er at vide omkring sockets
VBSpeed Hjælp til hvordan du kan optimer koden
GPWiki Indholder en masse Spil intereseret Visual Basic Guider
XtremeVBTalk En VB forum
AllAPI Eksempler på Windows API's
DirectX4VB DirectX guider
Hardcore Visual Basic Bruce McKinney's Mesterværk; Viser at du kan skrive næsten alt i VB6
Planet Source Code Kode eksempler
VBCode.com Gratis Kode for VB
A1VBcode.com Endnu en gratis kode side til VB