Collabora Office 24.04 Help
Statische dialoogvensters van Collabora Office worden gecreĆ«erd met de Dialoogbewerker en worden opgeslagen op verschillende plaatsen in overeenstemming met hun persoonlijke (Mijn macroās), gedeelde (Applicatie-macroās) of in het document ingesloten aard. Omgekeerd, dynamische dialoogvensters worden tijdens het uitvoeren geconstrueerd, van BASIC- of Python-scripts, of door gebruik te maken van een andere door Collabora Office ondersteunde taal. Het openen van statische dialoogvensters met Python wordt hierbij gedemonstreerd. De foutafhandeling en internationalisering zijn hier weggelaten voor de helderheid.
De onderstaande voorbeelden openen het Access2Base Trace console of de geĆÆmporteerde dialoog TutorialsDialog met menu:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
def consoleDlg():
ctx =XSCRIPTCONTEXT.getComponentContext()
smgr = ctx.getServiceManager()
dp = smgr.createInstanceWithContext("com.sun.star.awt.DialogProvider", ctx)
dlg = dp.createDialog( "vnd.sun.star.script:Access2Base.dlgTrace?location=application")
dlg.execute()
dlg.dispose()
def tutorDialog():
ctx =XSCRIPTCONTEXT.getComponentContext()
smgr = ctx.getServiceManager()
dp = smgr.createInstanceWithContext("com.sun.star.awt.DialogProvider", ctx)
dlg = dp.createDialog("vnd.sun.star.script:Standard.TutorialsDialog?location=application")
dlg.execute()
dlg.dispose()
g_exportedScripts = (consoleDlg, tutorDialog)
Het onderstaande voorbeeld opent een recent gewijzigde Dialog1 dialoogvenster van een document met menu:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
def docDialog():
""" Toon een documentgebaseerde dialoogvenster """
model = XSCRIPTCONTEXT.getDocument()
smgr = XSCRIPTCONTEXT.getComponentContext().ServiceManager
dp = smgr.createInstanceWithArguments( "com.sun.star.awt.DialogProvider", (model,))
dlg = dp.createDialog( "vnd.sun.star.script:Standard.Dialog1?location=document")
dlg.execute()
dlg.dispose()
g_exportedScripts = (docDialog,)
Bekijk de msgbox.py in de map {installation}/program/ voor voorbeelden van dynamische dialogen in Python.