Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#1 2. 9. 2011 12:07:34

Billlly_Samotar
Člen
Registrace: 26. 8. 2011
Příspěvků: 18

Otevření formuláře po spuštění Base aj.

Opět Vás zdravím s pár dotazy, na které jistě velké množství z Vás, co si tento příspěvek přečtou mi budou moct dokázat odpovědět.
.
1) Chtěl bych, když spustím databázi, aby se hned po startu spustil formulář, který v ní mám uložený. Je toto v OO možné či nikoli a člověk si jej musí spustit sám? V MS Access jsem to tak nastavené měl, ale tady to vypadá, jako bych musel mít napsané makro a to rovnou nastavit aby se spouštělo při startu. Můžete mi prosím poradit? Vím jak spustit po startu makro => Nástroje -> Přizpůsobit -> záložka Události -> dole vybrat Databázi (aby to nebylo definováno pro celé OO) -> zvolit "Otevřít dokument" a v pravé části dát Makro a požadované si vybrat.
.
Odpověď na dotaz první: Makro k otevření formuláře po startu (pod OO 3.3 funguje):
.

[u]Sub OpenStartForm[/u]
   oContexto = CreateUnoService("com.sun.star.sdb.DatabaseContext") 
   oFonte = oContexto.getRegisteredObject("Databaze") 
   oForms = oFonte.DatabaseDocument.FormDocuments 
   oAConnection = oFonte.getConnection("","") 

   Dim pProp(1) As New com.sun.star.beans.PropertyValue 
   pProp(0).Name = "ActiveConnection" 
   pProp(0).Value = oAConnection 
   pProp(1).Name = "OpenMode" 
   pProp(1).Value = "open" 

   oForm = oForms.loadComponentFromURL("Hlavni_Menu", "_blank", 0, pProp())
End Sub

.
2) Dále jestli by jste mi mohli ještě napsat nějaké makro, které když přes tlačítko ve formuláři otevřu nějaký formulář, původní (ten s tím tlačítkem) se zavře a bude aktivní okno formulář, který jsem otevřel.
.
3) Dalším dotazem a snad posledním je, když spustím formulář, jestli by bylo možno nastavit nějaké makro aby se hned formulář Maximalizoval. Vždy jej musím maximalizovat ručně. Je toto prosím též možné?
.
Odpověď na dotaz třetí: Makro k maximalizaci je zde (pod OO 3.3 funguje):

[u]Sub Maximalizace[/u] 'Maximalizuje dané/aktivní okno
oController = ThisComponent.getCurrentController()
oFrame = oController.getFrame()
oContainerWindow = oFrame.ContainerWindow
oContainerWindow.isMaximized = True
End Sub

Děkuji předem za odpovědi.

Editoval Billlly_Samotar (5. 9. 2011 10:47:14)

Offline

#2 2. 3. 2012 22:23:32

student
Člen
Registrace: 27. 2. 2006
Příspěvků: 112

Re: Otevření formuláře po spuštění Base aj.

existuje doplnok Switchboard, skúsil som ho dávnejšie ale nemal som veľa času na testovanie

Offline

Zápatí