LibreOffice 7.1 žinynas
„LibreOffice“ statiniai dialogai kuriami naudojant dialogų rengyklę ir yra laikomi įvairiose vietose atsižvelgiant į jų prigimtį: asmeninę („My Macros“), bendrinimo („LibreOffice Macros“) arba įterptųjų dokumentų. Priešingai dinaminiai dialogai konstruojami vykdymo metu naudojant „Basic“ arba Pitono skriptus, arba tam naudojant kitas „LibreOffice“ grindžiamas kalbas. Čia iliustruojami Pitono statinių dialogų atvėrimas. Aiškumo dėlei išimčių apdorojimas ir internacionalizavimas praleisti.
Pateikti pavyzdžiai atveria „Access2Base Trace“ konsolę arba importuotą „TutorialsDialog“ dialogą naudojantis meniu:
# -*- 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)
Pateiktas pavyzdys atveria naujai taisomą „Dialogas1“ dialogą iš dokumento naudojant meniu:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
def docDialog():
""" Rodomas „doc“ dialogas """
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,)
Nurodoma į msgbox.py, esantį {installation}/program/ Pitono dinaminių dialogų pavyzdžių kataloge.