ການເປີດໄດອາລັອກດ້ວຍ Python

ໄດອາລັອກຄົງທີ່ຂອງ LibreOffice ແມ່ນຖືກສ້າງຂຶ້ນດ້ວຍ ຕົວແກ້ໄຂໄດອາລັອກ ແລະ ຖືກເກັບໄວ້ໃນບ່ອນຕ່າງໆ ຕາມລັກສະນະສ່ວນຕົວ (ມາໂຄຣຂອງຂ້ອຍ), ແບ່ງປັນ (ມາໂຄຣຂອງແອັບພລິເຄຊັນ) ຫຼື ຝັງຢູ່ໃນເອກະສານ. ໃນທາງກົງກັນຂ້າມ, ໄດອາລັອກແບບໄດນາມິກແມ່ນຖືກສ້າງຂຶ້ນໃນເວລາເຮັດວຽກ (runtime), ຈາກສະຄຣິບ Basic ຫຼື Python, ຫຼື ໃຊ້ ພາສາອື່ນໆທີ່ LibreOffice ຮອງຮັບ ໃນເລື່ອງນັ້ນ. ການເປີດໄດອາລັອກຄົງທີ່ດ້ວຍ Python ແມ່ນມີຕົວຢ່າງໃຫ້ເຫັນຢູ່ນີ້. ການຈັດການຂໍ້ຜິດພາດ ແລະ ການເຮັດໃຫ້ເປັນສາກົນແມ່ນຖືກລະເວັ້ນໄວ້ເພື່ອຄວາມຊັດເຈນ.

ໄດອາລັອກໃນ ແມັກໂຄຣຂອງຂ້ອຍ ຫຼື ແມັກໂຄຣຂອງແອັບພລິເຄຊັນ

ຕົວຢ່າງຂ້າງລຸ່ມນີ້ ເປີດຄອນໂຊນ Access2Base Trace ຫຼື ໄດອາລັອກ TutorialsDialog ທີ່ນຳເຂົ້າດ້ວຍເມນູ ເຄື່ອງມື - ແມັກໂຄຣ - ຣັນແມັກໂຄຣ:


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

ໄດອາລັອກທີ່ຝັງຢູ່ໃນເອກະສານ

ຕົວຢ່າງຂ້າງລຸ່ມນີ້ ເປີດໄດອາລັອກ Dialog1 ທີ່ຫາກໍແກ້ໄຂໃໝ່ຈາກເອກະສານດ້ວຍເມນູ ເຄື່ອງມື - ແມັກໂຄຣ - ຣັນແມັກໂຄຣ:


        # -*- coding: utf-8 -*-
        from __future__ import unicode_literals
            
        def docDialog():
            """ ສະແດງໄດອາລັອກທີ່ຢູ່ໃນເອກະສານ """
            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,)
    

ເບິ່ງ msgbox.py ໃນໄດເຣັກທໍຣີ {installation}/program/ ສຳລັບຕົວຢ່າງໄດອາລັອກແບບໄດນາມິກຂອງ Python.

ກະລຸນາສະໜັບສະໜູນພວກເຮົາ!

ກະລຸນາສະໜັບສະໜູນພວກເຮົາ!