как перемещать изображения в openoffice.org BASIC или LibreOffice.org

После перемещения изображений в VBA с использованием Shape.IncrementLeft и Shape.IncrementTop я хотел бы перемещать изображения в коде openoffice.org BASIC. После поиска в Интернете по этим ключевым словам «движущееся изображение» и «openoffice.org» или «open BASIC» или «OOo BASIC» я не нашел ответа.

Я нашел, как перемещать изображения в Java, C++, Android, но не в OpenOffice.org BASIC, я прочитал эти руководства https://wiki.openoffice.org/wiki/Documentation/BASIC_Guide http://www.pitonyak.org/OOME_3_0.pdf Я пытался найти ответ и через LIBRE OFFICE, но безуспешно. Пробовал записать макрос, вставить картинку, подвигать мышкой и остановить макрос. При просмотре кода ответ на мой вопрос привел меня к диспетчеру и одному из методов UNO, я полагаю, что он как-то связан с этими ключевыми словами: Свойства в службе com.sun.star.awt.UnoControlImageControlModel com.sun .star.drawing.GraphicObjectShape BorderBottom BorderLeft BorderRight BorderTop oPoint = oShape.Position getPosition() setPosition(Point), но я не могу найти четкого ответа и не знаю, как их объединить, чтобы сделать изображение (или это может быть вставленная фигура также) двигаться.

может ли кто-нибудь подсказать мне, как найти ответ?


person user3374877    schedule 04.03.2014    source источник


Ответы (1)


прежде всего: https://wiki.openoffice.org/wiki/Extensions_development_basic — хорошее начало точка. В частности, очень полезен инструмент XRAY.

Следующий код изменяет положение выбранного изображения на листе Calc:

Sub Test

 dim aNewPosition as new com.sun.star.awt.Point

 oDoc = thisComponent
 oSelection = oDoc.CurrentSelection(0)

 if oSelection.supportsService("com.sun.star.drawing.Shape") then
  aPosition = oSelection.Position
  x = aPosition.X
  y = aPosition.Y
  aNewPosition.X = x + 100
  aNewPosition.Y = y + 100
  oSelection.setPosition(aNewPosition)
 endif

End Sub

Привет

Аксель

person Axel Richter    schedule 07.08.2014