Unklar "createInstance" bei Paragraph

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: Unklar "createInstance" bei Paragraph

Re: Unklar "createInstance" bei Paragraph

von Apollo102 » So, 06.10.2013 08:26

Hallo Stephan,

Sorry mein Fehler. Dein Vorschlag funktioniert:

Code: Alles auswählen

oPar.string = TableStr
Dieses natürlich auch:

Code: Alles auswählen

oPar.setString(TableStr)
Ich hatte dummerweise folgendes u.a. probiert:

Code: Alles auswählen

oPar.Text.setString("Dies ist der neue Text")
Was dann zu einer Meldung führte:

BASIC-Laufzeitfehler
Objektvariable nicht belegt

Habe mich dann wohl leider im Kreis gedreht. Muss mir wohl doch mal Xray installieren. Hoffe das bringt mehr Licht im Dschungel :-).

Danke für deine Hilfe.

Gruß

Apollo

Re: Unklar "createInstance" bei Paragraph

von Apollo102 » Do, 03.10.2013 18:17

Hallo Stephan,

vielen Dank für deine Antwort.

Ich bin nicht mehr im Büro. Muss gestehen, dass ich die Version nicht weiß. Ich schaue morgen mal nach.

Was evtl. auch dafür sprechen würde, beim Debugen des Variableninhalts kam es ab und zu zu einem Totalabsturz des Programms.

Danke

Gruß

Apollo

Re: Unklar "createInstance" bei Paragraph

von Stephan » Do, 03.10.2013 15:57

Jeder Versuch auf oPar zuzugreifen wird jedoch mit einer Fehlermeldung erwidert. Welchen Gedankenfehler mache ich?
Kann ich nicht sagen, denn der simple Versuch einfach mal die Eigenschaften aufzulisten klappt mittels:

Code: Alles auswählen

oPar = ThisComponent.createInstance("com.sun.star.text.Paragraph")
Msgbox oPar.dbg_properties
Wird mit der nachfolgenden Code-Zeile nicht der Absatz bereits erstellt und ich müsste einen Text dem Absatz zuweisen können, bevor ich den neuen Absatz vor die Tabelle einfüge?
Ja.

Ich habe folglich in OOo 3.3.0 auch kein Problem mit:

Code: Alles auswählen

oText = ThisComponent.getText() 'ganze Text des Dokuments
oPar = ThisComponent.createInstance("com.sun.star.text.Paragraph")
oPar.String = "xxx" 'dbg_properties
oTable = ThisComponent.getTextTables()
oText.insertTextContentBefore (oPar, oTable(0)) 'Leerer Absatz wird vor der Tabelle eingefügt
weswegen ich nur mutmaßen kann das Du evtl. eine fehlerhafte Programmversion nutzt.



Gruß
Stephan

Unklar "createInstance" bei Paragraph

von Apollo102 » Do, 03.10.2013 15:09

Hallo,

ich versuche einen Absatz vor einer Tabelle einzufügen.

Folgende Ausschnitte des Codes:

Code: Alles auswählen

oText = ThisComponent.getText() 'ganze Text des Dokuments
oPar = ThisComponent.createInstance("com.sun.star.text.Paragraph")


oText.insertTextContentBefore (oPar, oTable) 'Leerer Absatz wird vor der Tabelle eingefügt

Das funktioniert soweit auch. Ein leerer Absatz wird vor der betreffenden Tabelle eingefügt. Alles super.

Nun möchte ich jedoch in diesen neuen Absatz auch einen Inhalt einfügen.

Nun meine Frage oder das was mir unklar ist. Wird mit der nachfolgenden Code-Zeile nicht der Absatz bereits erstellt und ich müsste einen Text dem Absatz zuweisen können, bevor ich den neuen Absatz vor die Tabelle einfüge?

Code: Alles auswählen

oPar = ThisComponent.createInstance("com.sun.star.text.Paragraph")
Jeder Versuch auf oPar zuzugreifen wird jedoch mit einer Fehlermeldung erwidert. Welchen Gedankenfehler mache ich?

Danke für eure Hilfe.

Gruß

Apollo

Nach oben