anoniem Geplaatst: 27 november 2002 Delen Geplaatst: 27 november 2002 Ik ben een newbie op het gebied van VB6, nu wil ik een dart programma maken. Doormiddel van een knop moet hij steeds de ingevoerde score van 501 aftrekken. Dus 501 - 60 = 441, en als ik dan 180 gooi :wink: moet hij dmv van dezelfde knop 180 van 441 aftrekken. Tot zover kwam ik: Private Sub cmdBereken_Click() spel = 501 score = txtInvoer beurt = spel - score lstAntwoord.AddItem beurt End Sub Private Sub Form_Load() lstAntwoord.AddItem "501" End Sub Wie kan mij weer op weg helpen? Quote Link naar reactie
anoniem Geplaatst: 27 november 2002 Auteur Delen Geplaatst: 27 november 2002 [b:a1fb36baa0]vet[/b:a1fb36baa0] zijn de veranderingen Private Sub cmdBereken_Click() 'Eerst kijken welke index het laatste getal heeft [b:a1fb36baa0]laatstegetal = lstAntwoord.listindex - 1[/b:a1fb36baa0] 'Nu even de laatste score gebruiken en een integer van maken met val spel = [b:a1fb36baa0]val(lstAntwoord.list(laatstegetal))[/b:a1fb36baa0] 'nu de score binnenhalen uit het tekstveld score = [b:a1fb36baa0]val([/b:a1fb36baa0]txtInvoer[b:a1fb36baa0].text)[/b:a1fb36baa0] 'nu de nieuwe score berekenen beurt = spel - score 'nu van de score weer een tekst maken, hier de zijspaties vanaf halen, en in de lijst plaatsen lstAntwoord.AddItem [b:a1fb36baa0]ltrim$(rtrim$(str$(beurt)))[/b:a1fb36baa0] End Sub Private Sub Form_Load() lstAntwoord.AddItem "501" End Sub Nu zou het moeten werken :) TIP: Haal bij je boekhandel een beter (Q)(uick)/(VB)basic-boek, zoals Qbasic in de praktijk van Herman Wind - daar heb ik basic programmeren mee geleerd... :) Quote Link naar reactie
anoniem Geplaatst: 27 november 2002 Auteur Delen Geplaatst: 27 november 2002 Bedankt, dit is weer veel stof om over na te denken. Ik heb micorosoft vb6 op de hcc voor een prikkie gekocht maar het is toch echt een pil om door te werken. Betekent dat trouwens dat je geen cijfers mag invoeren in een listbox? Quote Link naar reactie
anoniem Geplaatst: 28 november 2002 Auteur Delen Geplaatst: 28 november 2002 Ben al weer wat wijzer over VB, ik heb jou aanpassingen grondig bestudeerd maar ik krijg hem nog niet aan de praat. Volgens mij declareert hij via spel die 501 niet. Dit heb ik nu: Private Sub Form_Load() lstAntwoord.AddItem 501 End Sub Private Sub cmdBereken_Click() laatstegetal = lstAntwoord.ListIndex - 1 spel = Val(lstAntwoord.List(laatstegetal)) score = Val(txtInvoer.Text) beurt = spel - score lstAntwoord.AddItem LTrim$(RTrim$(Str$(beurt))) End Sub Quote Link naar reactie
anoniem Geplaatst: 28 november 2002 Auteur Delen Geplaatst: 28 november 2002 Maak dit er eens van? Private Sub cmdBereken_Click() laatstegetal = lstAntwoord.ListIndex - 1 [b:e8eec45efa]msgbox str$(laatstegetal)[/b:e8eec45efa] spel = Val(lstAntwoord.List(laatstegetal)) [b:e8eec45efa]msgbox str$(spel)[/b:e8eec45efa] score = Val(txtInvoer.Text) [b:e8eec45efa]msgbox str$(score)[/b:e8eec45efa] beurt = spel - score [b:e8eec45efa]msgbox str$(beurt)[/b:e8eec45efa] lstAntwoord.AddItem LTrim$(RTrim$(Str$(beurt))) End Sub Geef dan even de output van de venstertjes Quote Link naar reactie
anoniem Geplaatst: 28 november 2002 Auteur Delen Geplaatst: 28 november 2002 als ik bijvoorbeeld 20 invoer: in de eerste message box: -2 in de tweede message box: -2 in de derde message box: 0 in de vierde message box: 20 in de vijfde message box: -20 Quote Link naar reactie
anoniem Geplaatst: 28 november 2002 Auteur Delen Geplaatst: 28 november 2002 Het gaat volgens mij fout met deze: laatstegetal = lstAntwoord.ListIndex - 1 Ook als ik f8 gebruik laat hij niet de eerste keer 501 in. Quote Link naar reactie
anoniem Geplaatst: 29 november 2002 Auteur Delen Geplaatst: 29 november 2002 Het is gelukt, ik moest listCount hebben ipv listIndex. Bedankt voor de moeite! Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen