Bei Visual Basic mehrere Label mit gleichem Text versehen?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Du hast das Problem whrscheinlich schon gelöst.

Aber hier ein Ansatz: Du musst nur die Werte für Nr ändern.

       For Each CTRL In Me.Controls
           If TypeOf (CTRL) Is Label Then
               Dim Nr As Integer = CInt(CTRL.Name.substring(5))
               If Nr >= 2 And Nr <= 6 Then
                   CTRL.Text = "XXX"
               End If
           End If
       Next

Viel Spaß!

Horst

In VB6 musste man die ActiveX Objekte als Array Objekte umfunktionieren, dann konnte man diese auch in der Weise ansprechen, wie user201 dies vorgeschlagen hat.
Allerdings natürlich:
objLabel.caption = "bla".
In anderen VB Versionen hast du weitere Optionen, wie dein ActiveX Objekt, dass du verwendest angesprochen werden soll, da man an die Adressen der Objekte erhalten kann. Über diesen Mechanismus kannst du dann in ähnlicher Weise Schleifen schreiben.

habe zwar schon lange kein Visual Basic mehr gemacht aber wenn sie immer noch z.B. Textbox1 Textbox 2 ect heißen dann kannst du sie mit einer Schleife füllen.

z.B.

For i = 1 to 50

Textbox(i).text = "-"

next i

Probier mal :P

Das funktioniert nicht ganz. In deinem Code steht unter anderem "Textbox". Diese ist aber in meinem nicht vorhanden. Trotzdem Danke für den Tipp!

1
@Dunkelvogel

Dann bleibt dir nichts außer alle in eine Function zu schreiben und sie dann bequem aufzurufen! :D

0

Was möchtest Du wissen?