Globales Class Array. Definieren und Verwenden
Zweck: Datensätze in verschiedenen Forms parat haben
Hallo,
es geht mir darum ein Array zu definieren in dem ich ein paar Datensätze aufnehmen kann und diese
FORMÜBERGREIFEND zu verwenden.
So solls werden:
Personen(0).Name = "Huber"
Personen(0).Nachname = "Müller"
Personen(1).Name = "Heinz"
Personen(1).Nachname = "Dietrich"
etc.
Bisheriger Lösungsversuch:
Module Module1
Public Class klasse1
Public Name As String
Public Nachname As String
End Class
Public Personen = New klasse1()
End Module
Die Definition wird angenommen. Allerding wenn ich Versuche in einem Form Window einen Wert zuzuweisen kommt ein Fehler, sobald
das Programm läuft.
Personen(0).Name = "Heinz"
Fehler: Wenn ein Member in der Klassenbibiothek gelöscht wurde, müssen Sie alle Asymbleys mit Verweisen auf diese Bibiothek
neu Kompilieren. Wenn Sie auf Member einer spät gebundenen Objektvariable zugreifen, müssen Sie sicherstellen, dass diese Public deklariert ist.
Wie und wo definiere ich es? Und wie greife ich in Form1 bzw. Form2 etc. darauf zu?
Ich hätte das ganze gern als Globale Variablen (nicht übergeben).
Wie heißen die Code Zeilen? Wo müssen diese hin?
Hallo,
es geht mir darum ein Array zu definieren in dem ich ein paar Datensätze aufnehmen kann und diese
FORMÜBERGREIFEND zu verwenden.
So solls werden:
Personen(0).Name = "Huber"
Personen(0).Nachname = "Müller"
Personen(1).Name = "Heinz"
Personen(1).Nachname = "Dietrich"
etc.
Bisheriger Lösungsversuch:
Module Module1
Public Class klasse1
Public Name As String
Public Nachname As String
End Class
Public Personen = New klasse1()
End Module
Die Definition wird angenommen. Allerding wenn ich Versuche in einem Form Window einen Wert zuzuweisen kommt ein Fehler, sobald
das Programm läuft.
Personen(0).Name = "Heinz"
Fehler: Wenn ein Member in der Klassenbibiothek gelöscht wurde, müssen Sie alle Asymbleys mit Verweisen auf diese Bibiothek
neu Kompilieren. Wenn Sie auf Member einer spät gebundenen Objektvariable zugreifen, müssen Sie sicherstellen, dass diese Public deklariert ist.
Wie und wo definiere ich es? Und wie greife ich in Form1 bzw. Form2 etc. darauf zu?
Ich hätte das ganze gern als Globale Variablen (nicht übergeben).
Wie heißen die Code Zeilen? Wo müssen diese hin?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 74746
Url: https://administrator.de/contentid/74746
Ausgedruckt am: 26.11.2024 um 14:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo "x93000",
ich nehme mal an Du "programmierst" in VB6...richtig? Nach Der Fehlermeldung zu gehen ist das aber VB.Net bzw. VB 2005. Wenn das der Fall ist kann ich Dir allerhöchstens ein, zwei Buchempfehlungen zu grunglegenden Programmierkonzepten der OOP geben...lass es uns wissen.
Naja, ansonsten schau mal in der "Hilfe" Deiner "Programmiersprache" nach Arrays, insbesondere wenn es um dynamische Arrays geht. Desweiteren noch wie man mit "Klassen" bzw. Objekten umgeht. Da sei Dir im Bereich VB die Anweisung Set ans Herz gelegt.
Nichts für ungut...wenn Du nicht weiterkommst stehe ich Dir gerne zur Seite.
BG, Felix
ich nehme mal an Du "programmierst" in VB6...richtig? Nach Der Fehlermeldung zu gehen ist das aber VB.Net bzw. VB 2005. Wenn das der Fall ist kann ich Dir allerhöchstens ein, zwei Buchempfehlungen zu grunglegenden Programmierkonzepten der OOP geben...lass es uns wissen.
Naja, ansonsten schau mal in der "Hilfe" Deiner "Programmiersprache" nach Arrays, insbesondere wenn es um dynamische Arrays geht. Desweiteren noch wie man mit "Klassen" bzw. Objekten umgeht. Da sei Dir im Bereich VB die Anweisung Set ans Herz gelegt.
Nichts für ungut...wenn Du nicht weiterkommst stehe ich Dir gerne zur Seite.
BG, Felix
Hi,
also was Du da in bzw. mit vb 2005 anstellen willst ist absolut, verzeihe, lächerlich. Selbst in VB6 wäre Dein Vorhaben schlecht, angefangen vom Gedanken etwas /global/ zu verwenden, bishin das dies /global/ verwendete Daten sind.
Besser jemand sagt es Dir direkt als das Du Dir niemals ein Buch vornimmst!
Jetzt habe ich angefangen Dir zu antworten, aber im mom ehrlich keine Lust Ressourcen rauszusuchen. Morgen werde ich Dir gerne einige Buchempfehlungen aussprechen, ggfls. einige Links zu Ressourcen die kostenlos im Internet frei erreichbar sind. Wenn Du nur etwas googlest findest Du unter Umständen sogar bessere.
Niedermachen will ich Dich wirklich nicht! Es ist gut das Du Dich für das programmieren interessierst. Aber wenn Dir eine /relativ/ komplexe IDE wie z.B. VB 2005 Express zu Verfügung gestellt wird, dann solltest Du Dich auch damit auseinandersetz.en. Zumindest minimal bevor Du in einem angesehen Forum wie administrator.de postest.
Wirklich nichts für Ungut, ich hoffe Du und jeder Leser nimmt es sich zu Herzen.
BG, Felix
also was Du da in bzw. mit vb 2005 anstellen willst ist absolut, verzeihe, lächerlich. Selbst in VB6 wäre Dein Vorhaben schlecht, angefangen vom Gedanken etwas /global/ zu verwenden, bishin das dies /global/ verwendete Daten sind.
Besser jemand sagt es Dir direkt als das Du Dir niemals ein Buch vornimmst!
Jetzt habe ich angefangen Dir zu antworten, aber im mom ehrlich keine Lust Ressourcen rauszusuchen. Morgen werde ich Dir gerne einige Buchempfehlungen aussprechen, ggfls. einige Links zu Ressourcen die kostenlos im Internet frei erreichbar sind. Wenn Du nur etwas googlest findest Du unter Umständen sogar bessere.
Niedermachen will ich Dich wirklich nicht! Es ist gut das Du Dich für das programmieren interessierst. Aber wenn Dir eine /relativ/ komplexe IDE wie z.B. VB 2005 Express zu Verfügung gestellt wird, dann solltest Du Dich auch damit auseinandersetz.en. Zumindest minimal bevor Du in einem angesehen Forum wie administrator.de postest.
Wirklich nichts für Ungut, ich hoffe Du und jeder Leser nimmt es sich zu Herzen.
BG, Felix
Hi x93000,
Arrays können in VB 2005 natürlich noch genutzt werden aber das Framework (und auch VB 2005 als Sprache selbst) stellt Dir berfügung. Stichwort Collections.
Damit Du weiterkommst hier mal solch eine Alternative:
Anstelle von
schreibst Du
und wenn Du eine neue Person erstellst machst Du es folgendermaßen:
OOP technisch würde man da völlig anders Vorgehen, damit willst Du Dich aber wohl nicht auseinandersetzen.
Schönes WE
Felix
Arrays können in VB 2005 natürlich noch genutzt werden aber das Framework (und auch VB 2005 als Sprache selbst) stellt Dir berfügung. Stichwort Collections.
Damit Du weiterkommst hier mal solch eine Alternative:
Anstelle von
Public Personen = New klasse1()
schreibst Du
Public Personen As New List(Of Person)
und wenn Du eine neue Person erstellst machst Du es folgendermaßen:
Dim p As New Person p.Name = "Alex" p.Nachname = "Tester" Personen.Add(p)
OOP technisch würde man da völlig anders Vorgehen, damit willst Du Dich aber wohl nicht auseinandersetzen.
Schönes WE
Felix