Hier ein Stück Code, welches aus einer BASE-Datei ein benanntes Formular öffnet und dessen Grösse einstellt, zuletzt den Cursor in einem Kontrollfeld aktivieren, sodass manN loslegen kann.
Have fun - ich denke, dass kann der ein oder die andere gebrauchen.
Code: Alles auswählen
Sub openBaseFormAndSize
' http://www.pitonyak.org/database/AndrewBase.odt
Dim pProp(1) As New com.sun.star.beans.PropertyValue
sURL = ConvertToURL("/zentrale/daten/ooo/OpenOffice.odb")
oDoc = starDesktop.loadComponentFromURL(sURL,"_blank",0,Array())
oForms = oDoc.getFormDocuments()
'oReps = oDoc.getReportDocuments()
oAConnection = oDoc.DataSource.getConnection("","")
'set properties
pProp(0).Name = "ActiveConnection"
pProp(0).Value = oAConnection
pProp(1).Name = "OpenMode"
pProp(1).Value = "open" ' OR: openDesign
' load the form: TargetFrameName and SearchFlags aren't used
oFormulario = oForms.loadComponentFromURL("OOo Tipps","_blank",0,pProp())
' 2008-02-05
With oFormulario.getCurrentController().getFrame().getContainerWindow()
.setPosSize( .PosSize.x, .PosSize.y , 800, 600 , com.sun.star.awt.PosSize.SIZE )
End With
' Focus in ein Kontrollfeld
oFeld = oFormulario.DrawPage.Forms(0).getByName( "fmtid" )
oFormulario.getCurrentController().getControl( oFeld ).setFocus()
End Sub