Функция CreateUnoService

Създава екземпляр на услуга на Uno с ProcessServiceManager.

Синтаксис:

CreateUnoService(serviceName As String) As Object
tip

За списък на наличните услуги посетете справочната страница com::sun::star Module.


Пример:

В следващия пример се създава функцията FileExists, която използва услугата com.sun.star.ucb.SimpleFileAccess, за да провери дали даден път води до съществуващ файл.

Function FileExists(sPath as String) As Boolean
    Dim svcSFA As Object
    Set svcSFA = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
    Dim bExists As Boolean : bExists = svcSFA.exists(sPath)
    Dim bIsFolder As Boolean : bIsFolder = svcSFA.IsFolder(sPath)
    FileExists = bExists And Not bIsFolder
End Function ' FileExists
tip

Услугите на UNO са подробно документирани онлайн в уебсайта api.libreoffice.org. Посетете справочната страница SimpleFileAccess Service, за да научите повече за методите, предоставяни от използваната в горния пример услуга.


Пример:

В долния код се използва услугата com.sun.star.ui.dialogs.FilePicker, за да се покаже диалог за отваряне на файл:

Sub Main
    fName = FileOpenDialog ("Моля, изберете файл")
    Print "Избран файл: " + fName
End Sub

Function FileOpenDialog(title As String) As String
    res = com.sun.star.ui.dialogs.ExecutableDialogResults
    filepicker = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
    filepicker.Title = title
    If res.OK = filepicker.execute() Then
        files = filepicker.getSelectedFiles()
        FileOpenDialog=files(0)
    EndIf
End Function ' Main

Моля, подкрепете ни!