Variabel For - Next

I en For - Next slinga låter man en variabel börja på ett värde. Sedan kommer en funktion som utförs medan variabeln har detta värde. Därefter räknas variabeln upp eller ner ett eller fler heltal varvid samma funktion utförs igen med det nya värdet på variabeln. Detta upprepas tills ett angivet slutvärde uppnåtts.

I nedanstående program listas alla fördefinierade färger i Visual Basics egen kod QBColor() där ett värde i parentesen kan vara mellan 0 och 15. Dessa motsvarar varsin färg.

Nu skall vi inte göra 16 Label som Label1, Label2, Label3 o.s.v. utan när den första är på plats KOPIERAR vi den. När vi nu klistrar in en kopia får vi meddelandet att Label1 redan finns och tillfrågas om vi vill göra en control array. Detta svarar vi Ja på. Det vi nu fått är Label1(0) och Label1(1).

Om vi fortsätter att klistra in en till får vi Label1(2). På så sätt upprepar vi proceduren till vi fått Label1(15), d.v.s. 16 stycken.

Nu klickar vi på labelobjektet i verktygslådan igen och ritar ut en ny label som då heter Label2. Kopiera och klistra in den så samma sätt så vi har Label2(0) till Label2(15).  Dessa placeras i formen så att Label1(0) hamnar ovanför Label2(0), Label1(1) ovanför Label2(1) o.s.v. som i bilden ovan.

Definiera variabel

Nu skall vi definiera en variabel. Vi kan döpa den till "i". Om vi klickar i den vänstra av de smala avlånga fönstren ovanför kodfönstret, ser vi att där står General. Markera det och skriv

Dim i As Integer

Integer betyder att variabeln i kan anta heltal mellan ungefär -32000 och +32000. Vi skall se mer på variabeldeklarationer senare.

Klicka igen på fönstret med General och välj Form och i det motsvarande högra fönstret värjer vi Load. Det betyder att programslingan vi kommer att skriva skall utföras när formen laddas.

I kodfönstret skriver vi

Private Sub Form_Load()
For i = 0 To 15
  Label1(i).BackColor = QBColor(i)
  Label2(i).Caption = i
Next i
End Sub

Det som sker är att "i" först får värdet 0. Det betyder att Label1(i) och QBColor(i) blir Label1(0) respektive QBColor(0), vilket i sin tur ger att Label1(0).BackColor får färgen QBColor(0) och vidare Label(2). 

Caption får värdet 0. Nu kommer programmet till Next i, det vill säga i = i+1 för detta fallet i = 0+1och proceduren upprepas så att Label1(1).BackColor får färgen QBColor(1) och i Label2(1). I caption står det 1. 

Detta upprepas tills i=15. När då "i" blir större än 15 och slingan börjar från början, ser programmet att "i" blivit större än det vi bestämt den ska få bli. Då avslutas slingan och programmet kör vidare. I detta fallet finns inget mer utan det vi har är ovanstående färggranna sak.

© SupportData.Net