Libre Office

[Erledigt]Kontrollfeld positionieren

Alles zur Programmierung im LibreOffice.
Antworten
Didi-2018
Beiträge: 7
Registriert: So 14. Jan 2018, 23:38

[Erledigt]Kontrollfeld positionieren

Beitrag von Didi-2018 » So 29. Nov 2020, 03:32

Hallo zusammen,

wie kann ich die absolute Position eines Kontrollfeldes per Makro in einem Formular verändern.
also z.B. oform.getbyName("fmtAnrede").PositionX=20 oder so.

Finde bei den Eigenschaften nichts dazu in der Doku, Ist das definitiv ausgeschlossen?
Alles andere Farben / Höhe /Größe usw. kann man ja auch darüber ändern.

Danke schon mal im voraus.

DIDI
Zuletzt geändert von Didi-2018 am Sa 12. Dez 2020, 10:41, insgesamt 1-mal geändert.

F3K Total
* LO-Experte *
Beiträge: 2516
Registriert: So 10. Apr 2011, 10:10

Re: Kontrollfeld positionieren

Beitrag von F3K Total » So 29. Nov 2020, 09:01

Moin,
das geht nicht über das Kontrollfeld, sondern über das zugehörige grafische Element auf der Drawpage, Beispiel für das dritte Element (Index 2):

Code: Alles auswählen

sub test
    oPage = thiscomponent.drawpage
    oPage(2).Size
    oSize = oPage(2).Size
    oSize.Height=2000
    oSize.Width= 10000
    oPage(2).Size = oSize
end sub
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Didi-2018
Beiträge: 7
Registriert: So 14. Jan 2018, 23:38

Re: Kontrollfeld positionieren

Beitrag von Didi-2018 » So 29. Nov 2020, 13:46

Hallo FK3,

danke für die Hilfe - war natürlich Goldrichtig.
Klappt jetzt.

G HDW

Didi-2018
Beiträge: 7
Registriert: So 14. Jan 2018, 23:38

Re: Kontrollfeld positionieren

Beitrag von Didi-2018 » Mo 30. Nov 2020, 20:09

Oben von FK3 das Beispiel für Höhe und Breite - hier der guten Ordnung halber hier das Beispiel für die Position:

Sub SetPosition
Dim oPage As Object
Dim Shape As Object
Dim Point As New com.sun.star.awt.Point
Dim Size As New com.sun.star.awt.Size
oPage = thiscomponent.Drawpage
Shape = oPage(4) ' viertes Indexfeld
Point.X = 14000 ' Position von Links nach Rechts
Point.Y = 12000 ' Position von Oben nach unten
Shape.Position = Point
End Sub

Cheers DIDI

Open Office
Antworten