Collabora Office 24.04 Hjælp
Collabora Offices statiske dialoger er oprettet med Dialog-redigering og lagret på forskellige steder efter deres personlige (Mine makroer), delte (LibreOffice-makroer) eller dokument-indlejrede natur. Modsætningsvis konstrueres dynamiske dialoger under kørsel fra Basic- eller Python- eller et script i ethvert andet Collabora Office understøttet sprog for den sags skyld. Åbning af statiske dialoger med Python illustreres hermed. Undtagelseshåndtering og internationalisering er udeladt af klarhedsgrunde.
Eksemplerne herunder åbner konsollen Access2Base Trace eller den importerede dialog TutorialsDialog med with menuen :
# -*- 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)
Eksemplet herunder åbner en nyligt redigeret dialog Dialog1 fra et dokument med menuen :
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
def docDialog():
""" Vis en dokument-baseret dialog """
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,)
Se eksempler på dynamiske Python-dialoger i msgbox.py i {installation}/program/-kataloget.