Vi har en massa textboxar i en groupbox. Vi har sedan skapat en for each snurra som kollar alla kontroller i formuläret och om det är en textbox som anropas klassen fel för felhantering. Problemet är att for each snurran tar textboxarna i en konstig ordning, inte från den översta och neråt utan tar en textbox som ligger mitt i groupboxen. Vi har även satt tabbordning på varje textbox. Hej! Tack.. Löste mitt problem men måste säga att det är skumt att det inte går att styra på något annat sätt. Du kan ju skapa en egen Collection och lägga in kontrollerna där i den ordning som du vill ha dom, sen kör du for each-loopen på den. kontrollerna är sorterade efter z-order.Problem med for each
Vad är felet och varför startar inte snurran med den översta först textboxen?
<code>
Dim kontroll As Control
Dim i As Integer
For Each kontroll In grpKunduppgifter.Controls
If TypeOf (kontroll) Is TextBox Then
i = fel.tom(kontroll)
If i = 1 Then
Exit Sub
End If
End If
Next
</code>Sv: Problem med for each
Jag har för mig att kontrollerna räknas upp i bakvänd ordning mot ordningsföljden som dom lades in på formuläret. Dvs. den sist inlagda kontrollen räknas upp först och den kontroll som lades in först hamnar sist på listan
Lennart JSv: Problem med for each
Sv: Problem med for each
Dim MyColl As New Collection()
Dim myCtrl As Control
MyColl.Add(TextBox4)
MyColl.Add(TextBox5)
MyColl.Add(TextBox3)
MyColl.Add(TextBox2)
MyColl.Add(TextBox1)
For Each myCtrl In MyColl
'Programkod
NextSv: Problem med for each
och det har inget med _var_ på fönstret de ligger..
normalt så blir det den ordningen du lägger till dom i .
men om du gör send to back eller bring to front så ändras ordningen...
//Roger