Функция CreateUnoService

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

Синтаксис:


     CreateUnoService(serviceName As String) As Object
  

Тип на резултата:

Object

Параметри:

Име

Тип

Описание

serviceName

String

The service name.

За списък на наличните услуги посетете справочната страница 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, за да научите повече за методите, предоставяни от използваната в горния пример услуга.


Пример:

The following code uses the service com.sun.star.ui.dialogs.FilePicker to show an open file dialog:


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")
   With filepicker
      .Title = title
      .MultiSelectionMode = True
      .appendFilter("Calc docs","*.ods;*.csv;*.123")
      .appendFilter("Writer or Base docs","*.odt;*.odb")
      .appendFilter("All files","*.*")
       If res.OK = .execute() Then 
          files = .getSelectedFiles()
          FileOpenDialog=files(0)
       EndIf
   End With
End Function ' FileOpenDialog

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