Seite 1 von 1

Makro Bild ändern

Verfasst: Di 24. Feb 2015, 10:33
von HeinziTuberkel
Hallo,
zuerst: diesen Post hatte ich zuerst im Writer-Forum gepostet, wurde dann aber darauf hingewiesen, dass der Post wohl eher hierhin gehört. Entschuldigt also bitte das Cross-Posting.

ich bin bei der Makro-Programmierung in LibO ganz neu. Habe jahrelang MS-Office Makros geschrieben, aber das Konzept ist hier so anders, das wird wohl noch ne Weile dauern, bis ich das kapiert habe.
Ich habe mir also ein Makro aus dem Forum kopiert, um ein Bild aus einer Datei einzufügen und zu skalieren. Das klappt auch alles, so lange nicht ein anderes Bild ausgewählt ist. Dann bekomme ich den Fehler "no text selection".
Das Makro soll später im OnClik Ereignis eines Bildes verwendet werden, um dann ein anderes Bild zu laden.
Meine Idee: Das angeklickte (=markierte) Bild löschen und anschließend das neue Bild einfügen und formatieren.
Leider finde ich so etwas simples wie "aktuelle Auswahl löschen" nicht. Weder "oDoc.Delete" (oDoc=thisDocument) noch "oCurs.Delete" (oCurs=oDoc.CurrentController.GetViewCursor) funktionieren.
Der Fehler tritt auf beim Befehl "oText=oCurs.getText()".
Die suche nach "getText()" in der Referenz hat mir nicht weitergeholfen.
Auch bei der Suche nach getViewCursor finde ich keine Hilfe zu den Properties oder Methoden, mit denen ich die aktuelle Selektion bearbeiten kann.
Ich glaube ich bin völlig auf dem Holzweg.

Re: Makro Bild ändern

Verfasst: Di 24. Feb 2015, 12:24
von mikele
Hallo,

die Fehlermeldung "oText=oCurs.getText()" resultiert wahrscheinlich daher, dass das Bild markiert ist und Bilder keinen Text enthalten gettext() läuft praktisch ins Leere.
Ist das Bild ausgewählt, so sollte es wie folgt gelöscht werden:

Code: Alles auswählen

	osel=odoc.getcurrentselection
	osel.dispose