On Wednesday 18 May 2011, 19:56:48 Uwe Haas wrote:
> Am 18.05.2011 19:43, schrieb Hans-Peter Jansen:
> > On Wednesday 18 May 2011, 17:12:24 Uwe Haas wrote:
> >> Am 18.05.2011 16:21, schrieb Hans-Peter Jansen:
> >>> Hi *,
> >>>
> >>> als blutiger Basic-Laie kämpfe ich heute mit dem Problem, das
> >>> Daten zwischen verschienenen Events verloren gehen.
> >>>
> >>> Anbei ein Beispiel-Dokument, dass auf das Problem runtergebrochen
> >>> ist, d.h. das echte Dokument liest seine Daten aus einer anderen
> >>> Datei, und die Strukturen sind ein bisserl komplexer.
> >>>
> >>> Absicht: Lese Daten aus einem anderen Tabellendokument (hier
> >>> Tabelle2 des selben Dokuments), und befülle die Comboboxen damit.
> >>> Wenn der Benutzer einen Eintrag wählt (hier Fahrer), sollte das
> >>> korrespondierende Fahrzeug in der zweiten CB erscheinen, aber
> >>> dennoch änderbar sein (also ein default Wert).
> >>>
> >>> Das Problem: Wenn das Dokument geladen wird, oder der "Neu laden"
> >>> Knopf gedrückt wird, triggert dies die OnLoad Funktion, die die
> >>> Combos initialisiert. Wenn der Benutzer nun einen Fahrer wählt,
> >>> wird die OnDriverChanged Funktion getriggert, die jetzt das
> >>> passende Fahrzeug anzeigen sollte, aber das vehicleList Array ist
> >>> leer (UBound: -1) :-(. Igendetwas hat die Daten zwischenzeitlich
> >>> gefressen.. Eigentlich dachte ich, das Array vehicleList as
> >>> Private zu deklarieren, müsste reichen, aber selbst Global geht
> >>> offenbar nicht.
> >>>
> >>> Hat hier jemand eine Idee, was ich falsch mache?
> >>>
> >>> Eine modul-globale Private Deklaration sollte doch zur Laufzeit
> >>> des Moduls (Dokuments) erhalten bleiben.
> >>>
> >>> Eine Erhellung ist leidenschaftlich erwünscht ;-)
> >>> Pete
> >>
> >> Da Anlagen von der Mailingsoftware automatisch entfernt werden,
> >> das Dokument bitte mittels öffentlichem Link verfügbar machen.
> >
> > Hrmpf, sorry:
> >
> > ftp://urpla.net/combotest.ods
> >
> > Pete
> >
> > --
> > LibreOffice 3.3.2
> > OOO330m19 (Build:202)
> > tag libreoffice-3.3.2.2
> > openSUSE 11.1
> > My LO packages for 11.1 (evergreen) are available here:
> > http://download.opensuse.org/repositories/home:/frispete:/LibreOffi
> >ce
>
> Woher soll die Funktion wissen, welche Daten gebraucht werden?
> Die Quellangaben sind nicht vorhanden.

Ich bin blutiger Basic Anfänger, welche Quellangaben fehlen? Muss ich in 
der Funktion bekannt geben, dass ich auf eine globale Modulvariable 
zugreifen will?

Heisst dass, diese Deklaration zu Beginn des Moduls ist nicht 
ausreichend:

Type Vehicle
        Vehicle as String
        Driver as String
End Type
Global vehicleList() as Vehicle
Global driverList() as String

Alles, was ich brauche, ist sowas wie Static auf Modulebene.

Sorry for being so dense.

Pete

-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Antwort per Email an