Å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.

Supporter oss!