Seite 1 von 1
Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Do, 20.02.2014 16:00
von DocCyber
Hi community,
Ich möchte meine Formulare vollständig darstellen; nicht weniger, aber auch nicht mehr.
Dazu formatiere ich zur Entwurfszeit die Seite des entsprechenden Formulardokuments wie üblich mittels Format - Seite .
Wenn dann das Makro gestartet ist, schalte ich programmatisch das Hauptmenü des Fensters und sämtliche Menüleisten, Rollbalken, Lineale etc ab.
Danach wird das Fenster an das entsprechende Seitenformat angepasst und an die gewünschte Stelle des Monitors geschoben; also z.B. auf dem Monitor zentriert. All das klappt hervorragend.
Allerdings habe ich das Seitenformat im Makro-Code fest verdrahtet, weil ich bislang keine Möglichkeit finden konnte, das Seitenformat während der Laufzeit auszulesen.
Kann mir jemand auf die Sprünge helfen?
Re: Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Do, 20.02.2014 17:48
von F3K Total
Hi,
wenn du die Seitenvorlage Standard verwendest, geht es so:
Code: Alles auswählen
sub get_pagesize
PageSize = thisComponent.StyleFamilies.PageStyles.Standard.Size
Seitenbreite = PageSize.Width/1000
Seitenhoehe = PageSize.Height/1000
msgbox "die Seite ist " + Seitenbreite + " cm breit und " + Seitenhoehe + " cm breit"
end sub
Gruß R
Re: Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Do, 20.02.2014 18:44
von DocCyber
Hi F3K Total alias R.,
vielen Dank für dein Codesegment.
Jetzt müste ich nur noch wissen, was
thisComponent in
diesem Fall ist.
F3K Total hat geschrieben:Code: Alles auswählen
PageSize = thisComponent.StyleFamilies.PageStyles.Standard.Size
Ich verwende Folgendes
Code: Alles auswählen
thisDatabaseDocument.FormDocuments.getByName("Test").open
und später dann
Code: Alles auswählen
Sub Form_OnLoad
Dim oForm As Object
xray thisComponent ' <-keine StyleFamilies gefunden
oForm = ThisComponent.DrawPage.Forms(0)
xray oForm ' <-keine StyleFamilies gefunden
' hier würde ich gern die Seitengröße abfragen
Call InitFields(oForm)
.......
End Sub
Kannst du bitte noch etwas detaillierter werden?
K.
Re: Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Do, 20.02.2014 18:53
von F3K Total
Hi,
thisComponent ist das Formulardokument, desses Größe du auslesen möchtest.
Also quasi:
Sub Form_OnLoad
Dim oForm As Object
xray thisComponent ' <-keine StyleFamilies gefunden
oForm = ThisComponent.DrawPage.Forms(0)
xray oForm ' <-keine StyleFamilies gefunden
' hier würde ich gern die Seitengröße abfragen
Call InitFields(oForm)
.......
End Sub
Wenn du das Makro aus der IDE startest, geht es nicht, die IDE hat keine StyleFamilies.
Im geöffneten Formular Extras/Makros/...ausführen ... dann läufts.
Oder eben aus dem Formular heraus starten (Button/Ereignis ...)
Gruß R
Re: Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Do, 20.02.2014 19:20
von DocCyber
Hallo R.
funktioniert prima. Danke dir nochmals!!
Gruß
K.
Nun brauche ich noch einen Tipp, wie ich ein Fenster minimieren kann.
Aber bevor ich eine diesbezügliche Frage poste, sehe ich mich erst noch etwas um.
Re: Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Do, 20.02.2014 19:25
von F3K Total
Schau in die FAQ's
Re: Wie Seitengröße auslesen? (also Format - Seite)
Verfasst: Fr, 21.02.2014 10:52
von DocCyber
F3K Total hat geschrieben:Schau in die FAQ's
Yep, hatte es schon gefunden... !
