Form.Controls(i) - Nummer i ändern

Hallo,

jedes Control auf einem Formular hat ja eine Nummer.
Kann man die irgendwie nachträglich ändern (nicht zur
Laufzeit natürlich, sondern zur Design-Zeit), ohne den
Controls mittels Ausschneiden und wieder Einfügen die
höchste Nummer zu verpassen? Das ist nur bei wenigen
so halbwegs praktikabel.

Danke,
Kristian

jedes Control auf einem Formular hat ja eine Nummer.
Kann man die irgendwie nachträglich ändern

mir ist keine Möglichkeit bekannt - allerdings ist mir auch nicht ganz klar, wozu du das brauchst. wenn du die objekte mit ihrem namen ansprichst, können dir die nummern doch egal sein…

JJLehto

mir ist keine Möglichkeit bekannt - allerdings ist mir auch
nicht ganz klar, wozu du das brauchst. wenn du die objekte mit
ihrem namen ansprichst, können dir die nummern doch egal
sein…

Aber ich kann mit den Namen keine For-Schleife aufbauen.

Kristian

Hi Kris !

Richtig, Du kannst mit namen keine For Schleife aufbauen. Aber du kannst durch die Controls - Collection iterieren :

For each obj in Form1.Controls
if TypeOf obj is VB.TextBox then
'statements for TextBox
end if
'…
next

ciao
Mario

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Lösung: Form.Controls(i) - Nummer i ändern
Damit das Geblubber hier aufhört…

Die Form-Datei liegt im Klartext vor. In ihr ist für
die entsprechenden Controls jeweils ein eigener Absatz
wie dieser hier:

Begin VB.CommandButton ProbeButton
Caption = „Command 1“
Height = 735
Index = 1

Also abgesehen davon, daß ich das „Geblubber“ mal überhört habe, frage ich mich, wo Du diese Angaben her hast. Möglicherweise exportiert VB in diesem Format (ich kann mich erinnern, dort schonmal sowas gemacht zu haben), aber bei VBA konnte ich entsprechende Angaben nicht finden. Jedenfalls nicht im Klartext. Die *.frm enthält nur den Code, und die *.frx ist binär.

Kann ein VBA-Formular überhaupt in VB importiert werden? Also umgekehrt geht’s jedenfalls nicht.

Kristian

Sorry für das Geblubber. Stand nichts von VBA… in VB 6 ist
das so.

schaue aber gerne mal nach in VBA…

Alex

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]