sweepy Skrevet 6. juni 2006 Del Skrevet 6. juni 2006 Hei e e helt nybegynner på vb men eg lærer litt etter vert eg har et spm. eg holder på å mekke en extra kalkis pga dama kjøper 10-15 ver uke og det e litt pes å sjekke alle det som eg tenker på e hvordan eg kan sette opp en if nummber match box dette e litt vanskelig å forklare så eg prøver å illustrere [nummer fra extra trekkningen][][][][][][][][][] (Knapp for å aktivere sjekkinga] [boxer for å taste inn talla som du har på din extra kupong][][][][][][][][] tingen eg stresser med e å få connecta di to det eg vil den skal gjøre e at når du trykker på knappen e at vist nummerene i kupong boxene matcher di i trekning rutene så blir bg'n i kupong vinduene Grønne eg legger ved et bilde takker for all hjelp på fårhand Lenke til kommentar
ze5400 Skrevet 6. juni 2006 Del Skrevet 6. juni 2006 Vet ikke helt om jeg forstår hva du mener, men du kan jo prøve: If Me.txt1.Text = Me.txtMal1.Text Then 'Treff Elseif Me.txt2.Text = Me.txtMal1.Text Then 'Treff Elseif Me.txt3.Text = Me.txtMal1.Text Then 'Treff End If Også videre, klart det fins enklere måter, men de ligger desverre ikke fremst i mitt hode. Lenke til kommentar
sweepy Skrevet 6. juni 2006 Forfatter Del Skrevet 6. juni 2006 (endret) Ikke helt hva eg tenkte men eg ligger ved det eg har mekka hittil Extra.rar Endret 6. juni 2006 av sweepy Lenke til kommentar
aadnk Skrevet 6. juni 2006 Del Skrevet 6. juni 2006 Du må bruke en løkke til å søke gjennom alle tekstboksene. Det blir en smule innfløkt å forklare hvordan her og nå, er jeg redd, men du kan sikkert finne gode tekster om emnet på både nettet og i biblioteket. Ellers har jeg faktisk en gang i tiden laget et program noenlunde lik dette, dog i VB6. Du kan finne det her. Lenke til kommentar
Jonas Skrevet 6. juni 2006 Del Skrevet 6. juni 2006 (endret) Er det .NET du skriver i? Kan selv bare 6.0, men jeg kan si noe om fremgangsmåte og vise litt pseudokode. Det første du må gjøre er å endre litt på alle objektene slik at det blir lettere å skrive koden. Navngi alle de 3*20 tekstboksene txtTall og gi de en index-verdi basert på boksens posisjon. Navngi alle brettene txtBrett. (Første er 0, andre er 1, osv.) I kodedelen starter du en løkke og går gjennom alle de: Dim Tall For Tall = 0 To 59 Next Tall For hver av de du går gjennom, må du sjekke alle brettene. 200 ruter i brettene, ganger 60, 12000, det blir mye å sjekke. Lite effektivt å skrive så mange IF-settninger. Deretter sjekker man alle de 200 rutene og ser etter like tall: Dim Tall For Tall = 0 To 59 Dim Brett For Brett = 0 To 199 If txtTall(Tall).Text = txtBrett(Brett).Text Then txtBrett(Brett).BackColor = vbGreen Next Brett Next Tall Edit: aadnk kom først, løkker er altså løsningen. Endret 6. juni 2006 av Jonas Lenke til kommentar
aadnk Skrevet 6. juni 2006 Del Skrevet 6. juni 2006 Bemerk at .NET ikke støtter Index-egenskapen så som i VB6. I .NET kan du i stedet benytte Me.Controls for å søke gjennom alle kontroller i formen: Dim TextBox As TextBox, Numbers As New ArrayList, Tell As Long, Index As Long ' Her formoder jeg at tekstbokser som inneholder tallene det skal ' søkes oppimot begynner med 'txtSearch', mens tekstboksene i de ulike ' brikkene begynner med 'txtCell'. ' Gå gjennom de numre som skal brukes for å sjekke tekstboksene For Each TextBox In Me.Controls ' Sjekk at dette er en tekstboks som inneholder info If TextBox.Name.StartsWith("txtSearch") Then ' Legg til innholdet i array Numbers.Add(Val(TextBox.Text)) ' Lettest i denne sammenhengen End If Next ' Gå gjennom alle inndatatekstbokser i formen For Each TextBox In Me.Controls ' Sjekk kun tekstbokser som begynner med en viss streng If TextBox.Name.StartsWith("txtCell") Then ' Sett standardverdier Index = -1 ' Søk etter tallet For Tell = 0 To Numbers.Count - 1 If Numbers.Item(Tell) = Val(TextBox.Text) Then ' Lagre indeks Index = Tell ' Hopp ut av søkesubrutinen Exit For End If Next ' Sjekk om tekstboksen korresponderer til de gitte tallene If Index >= 0 Then ' Hvis så, sett en ny farge TextBox.BackColor = Color.PaleGreen Else ' Ellers, ... bruk normale farger TextBox.BackColor = Color.White End If End If Next Var visst ikke like innviklet å forklare likevel. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå