Controls mit und ohne Index zur Laufzeit ermitteln

23/09/2009 - 22:54 von Ralf Schlegel | Report spam
Hallo NG,

ich möchte für eine selbstgestrickte Sprachumschaltung
im Load-Ereignis einer Form durch alle darin enthaltenen
Controls itterieren und damit die Caption-Eigenschaft setzen.
Also:

For Each Control In Form
Control.Caption = ...
Next

Über den Control-Namen weise ich dann die richtige Caption zu.
Das würde auch funktionieren, wenn da nicht einige Control-Arrays
wàren...

Die haben nàmlich den gleichen Namen und sind nur über .Index zu
unterscheiden!

Wie kann ich das in der o.g. Schleife, ohne einen Error auszulösen,
ermitteln????

Folgende Versuche sind bereits gescheitert:
If IsEmpty(Control.Index) Then
If IsNull(Control.Index) Then
If IsArray(Control) Then
If UBound(Control) Then

und VarType geht auch nicht

Hat jemand eine Idee???

Liebe Grüße aus Wegberg

Ralf Schlegel
www.vb-zentrum.de
 

Lesen sie die antworten

#1 Christian Zimmermann
24/09/2009 - 08:20 | Warnen spam
Hallo Ralf,

Ralf Schlegel schrieb:

ich möchte für eine selbstgestrickte Sprachumschaltung
im Load-Ereignis einer Form durch alle darin enthaltenen
Controls itterieren und damit die Caption-Eigenschaft setzen.
Also:

For Each Control In Form
Control.Caption = ...
Next

Über den Control-Namen weise ich dann die richtige Caption zu.
Das würde auch funktionieren, wenn da nicht einige Control-Arrays
wàren...

Die haben nàmlich den gleichen Namen und sind nur über .Index zu
unterscheiden!

Wie kann ich das in der o.g. Schleife, ohne einen Error auszulösen,
ermitteln????




ohne Fehlerbehandlung wird es nur gehen, wenn du dir separat im Code die
Information ablegst, welches Control als Array existiert. Eine ohne
Fehlerbehandlung auskommende VB-built-in Möglichkeit zur Abfrage dessen
gibt es meines Wissens nicht. Aber, was spricht gegen die
Fehlerauslösung? Warum schrecken eigentlich immer soviele Leute vor der
Auswertung von "Fehlern" zurück? Der entstehende Fehlercode àndert sich
nicht. Der bleibt immer gleich, da er von VB kommt.

Gruß

Christian

Ähnliche fragen