Innhold

# Åpner en dialog i Phyton

LibreOffice statiske dialogbokser opprettes med dialogeditoren og lagres på forskjellige steder i henhold til deres personlige (Mine makroer) , delt (programmakroer) eller dokumentinnebygd. Omvendt blir dynamiske dialoger konstruert under kjøring, fra Basic- eller Python-skript, eller ved å bruke et hvilket som helst annet LibreOffice-støttet språk for den saks skyld. Åpning av statiske dialoger med Python er illustrert her. Unntakshåndtering og internasjonalisering er utelatt for tydlighetens skyld.

## Mine makroer eller applikasjonsmakroer

Eksemplene under åpner Access2Base Sporings-konsollen eller den importerte Opplæringsdialogen ved hjelp avVerktøy - Makroer - Kjør Makro-menyen:

            # -*- 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)

## Innebygde dokumentdialoger

Eksemplet nedenfor åpner en nylig redigert Dialog1-dialog fra et dokument med Verktøy - Makroer - Kjør Makro-menyen:

            # -*- coding: utf-8 -*-
            from __future__ import unicode_literals

            def docDialog():
                """ Viser en dok-basert 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,)

Gå til msgbox.py i {installasjon}/program/ -katalogen for Python dynamiske dialogeksempler.

Lignende emner

Åpner en Dialog med Basic

Pythonprogrammering, eksempel

LibreOffice Python Skript Hjelp