Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[VB .NET] Noobvraag over For loops

Pagina: 1
Acties:
  • 273 views

Verwijderd

Topicstarter
Hoihoi,

Voor informatica op school zijn we begonnen met Visual Basic. Nou ben ik thuis ook een beetje gaan kloten en kwam ik op het volgende idee:
Ik heb 2 tekstvlakken: eentje waarin je het begingetal zet en in eentje het eindgetal. Als je vervolgens op geneer klikt moet je dit krijgen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles genereerknop.Click
        Dim startgetal As Integer
        Dim eindgetal As Integer

        Dim i As Integer

        startgetal = TextBox1.Text
        eindgetal = TextBox2.Text



        For i = startgetal To eindgetal
            MsgBox(i)

        Next i

    End Sub
End Class


Dit werkt. Nu moet ik voor een loop van 1 tot 6 6x op mijn messagebox klikken. Maar dat wil ik niet. Ik wil dat mijn antwoord in TextBox3 komt te staan, onderelkaar.

Dus loop 1 tot 6 zou zijn
1
2
3
4
5
6...

Ik heb al dingen geprobeerd zoals :

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles genereerknop.Click
        Dim startgetal As Integer
        Dim eindgetal As Integer
        Dim antwoord As Integer


        Dim i As Integer

        startgetal = TextBox1.Text
        eindgetal = TextBox2.Text
        antwoord = TextBox3.Text


        For i = startgetal To eindgetal
            antwoord = i

        Next i

    End Sub
End Class
.
Maar dat doet 'ie niet T_T. Kan iemand mij uitleggen hoe ik ervoor kan zorgen dat het wel werkt?

  • RaZ
  • Registratie: November 2000
  • Niet online

RaZ

Funky Cold Medina

Ik weet niet wat je wil bereiken, maar die for-lus is gewoon niet nodig.

Als jij eerst bepaald: antwoord = TextBox3, en daarna antwoord gaat aanpassen, en er vervolgens niet mee doet, dan gebeurt er ook niks.

Aan het einde van de loop, is antwoord dus gelijk aan eindgetal, waardoor je die loop dus kan overslaan.

Wil je antwoord IN TextBox3 hebben, moet je dat wel doen in je code, want nu doe je er niets mee.

Wat wil je eigenlijk weten van loops, want dat ontgaat me eigenlijk.

Ey!! Macarena \o/


  • ProperChaos
  • Registratie: December 2007
  • Niet online
code:
1
antwoord = i

veranderen in
code:
1
TextBox3.Text = TextBox3.Text + vbNewline + i

Eventueel i eerst omzetten naar een string, ik weet niet hoe VB hiermee omgaat.

In before the lock btw >:)

Verwijderd

Topicstarter
@Raz: ik wil een loop maken die vervolgens in een textbox wordt weergeven. Na het genereren dus zoiets:
1
2
3
4
5
6
etc (screenshot: http://cl.ly/a6ef2c3eb6e142b20bc7) (ja, ik draai windhoos virtueel)

@ProperChaos: Heb ik geprobeerd ;
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles genereerknop.Click
        Dim startgetal As Integer
        Dim eindgetal As Integer


        Dim i As Integer

        startgetal = TextBox1.Text
        eindgetal = TextBox2.Text


        For i = startgetal To eindgetal
            TextBox3.Text = TextBox3.Text + vbNewLine + i

        Next i

    End Sub
End Class


Probleem is alleen dat hij nu dit geeft: Conversion from string " " to type 'Double' is not valid. (bij die TextBox3.Text = TextBox3.Text + vbNewLine + i lijn). Als ik de integer naar een string omzet doet die het ook niet.

[ Voor 4% gewijzigd door Verwijderd op 18-09-2010 11:15 ]


  • ProperChaos
  • Registratie: December 2007
  • Niet online
Oh, ja, ik heb al lang niet meer met VB gewerkt. Verander alle + eens naar & in die regel.
Dit kon je ook gewoon zoeken op Google, eerste resultaat van zoeken op de foutmelding geeft de oplossing al.

[ Voor 0% gewijzigd door ProperChaos op 18-09-2010 11:37 . Reden: typo ]


Verwijderd

Topicstarter
yay werkt! Dankje!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Sorry hoor, maar dit is toch echt de absolute basis van programmeren in zijn algemeenheid en van programmeren in VB.NET. De vragen die je hier stelde had je makkelijk op kunnen lossen met een beetje zelfstudie in een goed boek of een goede tutorial. Bijvoorbeeld het toevoegen van tekst aan strings, hoe je UI-componenten aan kan passen, waarom het kopiëren van een variabele niet betekent dat de originele variabele ook meeverandert, enz. wordt allemaal behandeld in elk beginnersboek.

Fijn voor je dat je probleem is opgelost, maar ik zou het prettig vinden als je de volgende keer zelf wat meer moeite wil doen voor je een topic opent.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.