Hallo,
über folgenden Service werden durch Interfaces bestimmt Methoden bereitgestellt.
oXform = createUnoService("com.sun.star.xforms.Model")
Nun möchte ich einige dieser Methoden auf das aktuelle Dokument anwenden
welches ich mir über folgenden Aufruf erzeuge.
oAktuellesDocument = StarDesktop.CurrentComponent
Wenn ich nun Methoden nutzen möchte aus "..xforms.Model" wie kann man da den Bezug auf das aktuelle Dokument herstellen?
oTest = oXform.getBinding(sBinding1) '???
** Funktion ist da nur der Bezug zum aktuellen Dok. fehlt **
oTest = createUnoService("com.sun.star.xforms.Model")
Xray.Xray oTest
oInst = oTest.getDefaultInstance()
oKind = oInst.getFirstChild()
sBind = oKind.getNodeName()
MsgBox sBind
**************************************************
Besten Dank
Gruß Andreas
Allgemeine Frage zur Interfaces und Methoden
Moderator: Moderatoren
Hey Andreas,
ohne es auszuprobieren - nur aus der Logik heraus:
Versuch, den Service doch direkt an das Dokument zu binden:
Müsste eigentlich funktionieren.
Gruss
Thomas
ohne es auszuprobieren - nur aus der Logik heraus:
Versuch, den Service doch direkt an das Dokument zu binden:
Code: Alles auswählen
oAktuellesDocument = StarDesktop.CurrentComponent
oXform = oAktuellesDokument.createUnoService("com.sun.star.xforms.Model")
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Laufzeitfehler: Eigenschaft oder Methode nicht gefunden
Hallo Thomas,
besten Dank für die schnelle Anwort. Hatte es auch schonmal auf die Art versucht - dann bringt er immer folgenden Fehler:
Laufzeitfehler: Eigenschaft oder Methode nicht gefunden
Sub Test
Dim oAktuellesDocument
Dim oXform
oAktuellesDocument = StarDesktop.CurrentComponent
oXform = oDoc.createUnoService("com.sun.star.xforms.Model")
Xray.Xray oXform
End Sub
besten Dank für die schnelle Anwort. Hatte es auch schonmal auf die Art versucht - dann bringt er immer folgenden Fehler:
Laufzeitfehler: Eigenschaft oder Methode nicht gefunden
Sub Test
Dim oAktuellesDocument
Dim oXform
oAktuellesDocument = StarDesktop.CurrentComponent
oXform = oDoc.createUnoService("com.sun.star.xforms.Model")
Xray.Xray oXform
End Sub
Hallo thinklink,
hmm, na gut. Hab grad mal einen Blick in die API geworfen. Das ist wohl etwas komplizierter.
Leider fehlt mir jetzt die Zeit, mich intensiv damit zu beschäftigen.
Aber: Schau dir mal das Interface "com.sun.star.xforms.XModel" an, dort findest du unter anderem die Methoden getInstance und getInstanceDocument sowie die Methode createBinding. Ich denke, dort musst du suchen.
Gruss
Thomas
hmm, na gut. Hab grad mal einen Blick in die API geworfen. Das ist wohl etwas komplizierter.
Leider fehlt mir jetzt die Zeit, mich intensiv damit zu beschäftigen.
Aber: Schau dir mal das Interface "com.sun.star.xforms.XModel" an, dort findest du unter anderem die Methoden getInstance und getInstanceDocument sowie die Methode createBinding. Ich denke, dort musst du suchen.
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Hallo Thomas,
denke jetzt hab ich´s.....
******************************************************
com.sun.star.xforms.XModel - war richtig...
Über das Interface "XFormsUIHelper1" hab ich alle Methoden die
man für die Arbeit mit XForms benötigt.
******************************************************
und es funktioniert echt gut...
Gruss Andreas
denke jetzt hab ich´s.....
******************************************************
com.sun.star.xforms.XModel - war richtig...
Über das Interface "XFormsUIHelper1" hab ich alle Methoden die
man für die Arbeit mit XForms benötigt.
******************************************************
und es funktioniert echt gut...
Gruss Andreas