Funkcja CreateUnoService

Tworzy instancję usługi Uno z ProcessServiceManager.

Składnia:

CreateUnoService(serviceName As String) As Object
tip

Listę dostępnych usług można znaleźć na stronie referencyjnej modułu com::sun::star.


Przykład:

Poniższy przykład tworzy funkcję FileExists, która używa usługi com.sun.star.ucb.SimpleFileAccess do sprawdzenia, czy dana ścieżka jest istniejącym plikiem.

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

Usługi UNO mają obszerną dokumentację online na stronie api.libreoffice.org. Odwiedź stronę referencyjną usługi SimpleFileAccess, aby dowiedzieć się więcej o metodach zapewnianych przez usługę użytą w przykładzie powyżej.


Przykład:

Poniższy kod używa usługi com.sun.star.ui.dialogs.FilePicker do wyświetlenia okna dialogowego otwierania pliku:

Sub Main
    fName = FileOpenDialog ("Wybierz plik")
    Print "wybrany plik: "+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

Prosimy o wsparcie!