Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Fragen - Antworten
Autor
Nachricht
aschne
Newbie
Newbie

Anmeldedatum: 10.04.2009
Beiträge: 2

In Me.Controls Reihenfolge ändern
Verfasst am: 10.04.2009, 08:23

Hallo Leute,

ich totaler Anfänger im VB hab mir das tool jetzt aber einmal hergenommen um eine Lernkartei für den Segelschein zu machen.
Möchte mir eine grafik hernehmen und über die beschriftungen Textboxen legen .... diese dann befüllen können und überprüfen.

soweit läuft das ganze ja ... nur hab ich ein problem und zwar folgende schleife

For Each tbs In Me.Controls
If i < 7 Then
If i > -1 Then
If TypeOf tbs Is TextBox Then
If tbs.Text = Begriffe(i) Then
tbs.ForeColor = System.Drawing.Color.Green
Punkte = Punkte + 1
i = i - 1
Else
tbs.ForeColor = System.Drawing.Color.Red
i = i - 1
End If
End If
End If
End If
Next

eigentlich wollt ich bei 0 starten und dann einfach bis 6 rauf gehen (also 7 einträge abarbeiten, die schleife würde ja in die richtige richtung laufen wenn ich i=i++ eingeben würde nur werden die textboxen genau in der verkehrten richtung angesprochen ...

erst tb7 dann 6 .. usw ... wie kann ich Me.controls sagen er soll mit der tb1 beginnen ... und somit einfach raufarbeiten ... würde mir so eine if abfrage sparen und es wäre eigentlich logischer ...

eigentlich interessiert es mich nur ob ich die reihenfolge irgendwie abändern kann Smile

hab das ganze form nochmal angefügt ... danke für die Antworten

LG
Andi

Public Class Form1

Dim Begriffe() As String = {"Niederholer", "Spi-Baum", "Toppnant", "Spinnaker", "Spi-Fall", "Spi-Achterholer", "Spi-Schot"}
Dim Punkte As Integer = 0
Dim Gesamtpunkte As Integer = 0


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Felderloeschen.Click


Dim tb As Control

For Each tb In Me.Controls
If TypeOf tb Is TextBox Then
tb.Text = ""
tb.ForeColor = System.Drawing.Color.Black
End If
Next


Punkte = 0

Label2.Text = Punkte
End Sub

Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click

End Sub

Private Sub Berechnen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Berechnen.Click



Punkte = 0


Dim tbs As Control
Dim i As Integer = 6


For Each tbs In Me.Controls
If i < 7 Then
If i > -1 Then
If TypeOf tbs Is TextBox Then
If tbs.Text = Begriffe(i) Then
tbs.ForeColor = System.Drawing.Color.Green
Punkte = Punkte + 1
i = i - 1
Else
tbs.ForeColor = System.Drawing.Color.Red
i = i - 1
End If
End If
End If
End If
Next

Label2.Text = Punkte

End Sub

Private Sub Beenden_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Beenden.Click
End
End Sub
End Class
 
_Marduk
Newbie
Newbie

Anmeldedatum: 12.04.2009
Beiträge: 1


Verfasst am: 12.04.2009, 23:12

Entweder du machst es manuell in der IDE (Design-Ansicht: Ansicht -> Aktivierreihenfolge) und klickst dann die entsprechende Reihenfolge an, oder du kannst auch per Code über TabIndex des jeweiligen Controls darauf zugreifen und sie so verändern.
 
aschne
Newbie
Newbie

Anmeldedatum: 10.04.2009
Beiträge: 2


Verfasst am: 13.04.2009, 00:21

danke für die antwort aber die aktivierungsreihenfolge sollte passen .... zumindest sind die boxen richtig nummeriert ... jedoch fängt die schleife mit der höchsten nummer an und arbeitet sich dann runter ... gibts ne möglichkeit das er mit der niedrigsten anfängt und sich hocharbeitet?

danke
 
Marduk_
« Moderator »<b><font color=green>« Moderator »</font



Anmeldedatum: 17.06.2007
Beiträge: 389


Verfasst am: 13.04.2009, 00:39


Du kannst auch mal versuchen so auf die Textboxen zuzugreifen.
Klappt wunderbar in C#, sollte dann auch in VB gehen

Code:
Form1.ActiveForm.Controls["textBox1"].Text = "asdf";
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Fragen - Antworten

Tags: reihenfolge, controls, ändern, each

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Wichtig: [Text] WebBrowser für Anfänger 2686 13.01.2012, 20:02
Keine neuen Beiträge Wichtig: [Text] ListView für Anfänger 4665 10.05.2011, 08:58
Keine neuen Beiträge Wichtig: [Text] Builder programmieren für Anfänger. 5243 30.04.2008, 19:29
Keine neuen Beiträge Wichtig: [Text] PopupMenu für Anfänger 1975 05.03.2008, 14:05
Keine neuen Beiträge Suche viele Leute für einen Downloader 569 28.09.2009, 17:10
 


[ Time: 0.2524s ][ Queries: 89 (0.1754s) ][ GZIP on - Debug on ]