Problem Portierung VB-Basic type-Strukturen nach OO-Basic

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Problem Portierung VB-Basic type-Strukturen nach OO-Basic

von moppel » Mi, 25.01.2006 09:42

Zunächst erstmal mein Dank an Michael.

Wenn type-Structs keine Schachtelung und Arrays zulassen, wie könnte man dann die obige geschachtelte Struktur elegant nach OO umsetzen?

Auf die Schachtelung könnte ich notfalls auch verzichten, jedoch nicht auf die Arrays.

Ich hab mal ein wenig weiter recherchiert und bin auf com.sun.star.Property gestoßen. Leider habe ich nirgends ein Beispiel-Codeschnipsel mit Zuweisung für die Elemente Type, Attributes finden können.

von ykcim » Di, 24.01.2006 13:07

Grundsätzliche gehen ab 2.0 Struktuen auch in OO.

Type Adresse
sName as string
sVorname as string
sPlz as string
sOrt as string
sTelefon as string
end Type

Das Objekt wird dann mit

var=createObject("Adresse")
erzeugt.

Was aber nicht geht ist die Verwendung eines Types innerhalb eines anderen.

mfg
Michael

Problem Portierung VB-Basic type-Strukturen nach OO-Basic

von moppel » Di, 24.01.2006 10:30

Hallo OO-Freaks,

als fortgeschrittener VB-Programmierer verwendete ich type - Strukturen.

Für einen Umstieg auf OO-Basic suche ich nun eine analoge Möglichkeit geschachtelte Strukturen zu erzeugen. Das einzige was ich in Richtung Strukturen gefunden habe, aber nicht ausreichend ist, sind com.sun.star.PropertyValue Strukturen mit .Name und .Value.

Folgende vereinfachte VB-Strukturen sollten nach OO portiert werden:

Public Type tDab ' Datenbankinfos
sDabKey As String ' Key für Datenbank
lSpaltenAnz As Long ' Spaltenanzahl Datenbank
lZeilenAnz As Long ' Anzahl Datenbankwerte je Spalte
vSpalte() As tSpalte ' Spaltendaten (1 ... lSpaltenAnz)
End Type

Type tSpalte ' Alle Daten zu einer Spalte
sSpaltenKey As String ' Interner Spalten-Schlüssel
sSpaltenLabel As String ' Spalten-Beschriftung
sZeilenWert() As String ' alle Zeilenwerte zu dieser Spalte
sTypKey As String ' Typschlüssel sZeilenWert in {CStr, CLng, ...}
bVec As Boolean ' mit oder ohne Indexvektor
lVec() As Long ' sortierter Indexvektor, falls bVec True
End Type

Für einen Tipp danke ich im voraus
moppel

Nach oben