Betrifft: ParamArray macht mir Kummer
von: Mathias
Geschrieben am: 25.01.2010 16:56:47
Hallo Leute,
ich habe ein Problem bezüglich des ParamArray.
Ich möchte in ein ParamArray bestimmt Objekte (Controls) und für diese Objekte Werte übergeben lassen. Bereits in Erfahrung bringen konnte ich für mich, dass wie bei jedem Array, ein Element immer mit einer Indexnummer (Feldindex) abgelegt wird.
Unter diesen Umständen habe ich mir nun folgende Schritte gedacht:
1. Feldindex des ParamArray-Elementes, das ein Objekt ist, bestimmen
2. Alle nachfolgenden Param-Array-Elemente, die selbst kein Objekt sind, dem Objekt aus 1. als Wert zuweisen
3. Wenn in der Folge der ParamArray-Elemente wieder auf ein Objekt gestoßen wird, dann wieder mit 1. beginnen
4. Ausstieg, wenn Ende der ParamArray-Elemente erreicht.
Mein Hauptproblem ist vorallem, dass ich nicht weiß, wie ich den Feldindex eines einzelnen ParamArray-Elementes auslesen kann. Hat jemand von euch eine Ahnung?
ich möchte, wenn ich den Feldindex weiß, einfach alle nachfolgenden als Wert zuweisen. Vielleicht noch als Anmerkung: Ich weiß, dass ich z.B. einem Objekt immer 4 Werte zuweisen will. Ich weiß aber im Vorfeld nicht wieviele Objekt insgesamt ich anpacken muss.
Gruß
Mathias
Betrifft: AW: ParamArray macht mir Kummer
von: Tino
Geschrieben am: 25.01.2010 17:20:11
Hallo,
"Mein Hauptproblem ist vorallem, dass ich nicht weiß, wie ich den Feldindex eines einzelnen ParamArray-Elementes auslesen kann. Hat jemand von euch eine Ahnung?"
Der Index geht in der Regel von 0 bis n also LBound(Array) to Ubound(Array) und auch so
kannst Du diese in einer For Next Schleife Durchlaufen.
for i LBound(Array) to Ubound(Array)
Array(i)....
next i
Gruß Tino
Betrifft: AW: ParamArray macht mir Kummer
von: Josef Ehrensberger
Geschrieben am: 25.01.2010 17:25:17
Hallo Matthias,
und wie willst du der Prozedur mitteilen, welcher Eigenschaft des Objektes du einen Wert zuweisen möchtest?
Betrifft: AW: ParamArray macht mir Kummer
von: Nepumuk
Geschrieben am: 25.01.2010 19:31:53
Ja genau,
warum also nicht einfach ein Array aus einem benutzerdefinierten Datentyp mit Objekt, Eigenschaft(en) [auch wieder ein Array] und Wert(en) [auch wieder ein Array]? Oder Eigenschaften und Werte als Array eines benutzerdefinierter Datentyps im Array des Objektdatentyps? Damit wärst du auch noch unabhängig von der Anzahl der Eignschaften. Eigenschaften kannst du per CallByName dann schreiben.
Gruß
Nepumuk
Betrifft: AW: ParamArray macht mir Kummer
von: Mathias
Geschrieben am: 25.01.2010 20:37:28
Hallo Ihr Zwei,
ich habe mir den Ablauf so gedacht, da ich auf keine andere Lösung mangelns Wissen gekommen bin. Ich hatte daran gedacht, dass ich bereits bei der Parametereingabe darauf achten muss, wie ich das eingebe. Wenn ich dort eine gewisse Reihenfolge einhalte, kann ich das gut mit einer Schleife lösen.
Aber, Nepumuk...dein Vorschlag klingt noch interessanter. Allerdings habe ich keine Ahnung, wie ich sowas (recht einfach) basteln kann. Kannst du mir da einmal einen Denkanstoß geben?
Gruß
Mathias
Betrifft: AW: ParamArray macht mir Kummer
von: Nepumuk
Geschrieben am: 25.01.2010 22:06:13
Hallo,
ein einfaches Beispiel:
Betrifft: AW: ParamArray macht mir Kummer
von: Mathias
Geschrieben am: 26.01.2010 08:29:10
Hallo Nepumuk,
danke für die Hilfe. Das passt zwar nicht zu 100% in mein Vorhaben, eröffnet aber eine andere Perspektive.
Gruß
Mathias