Funkce CreateUnoService

Vytvoří instanci služby Uno se službou ProcessServiceManager.

Syntaxe:


     CreateUnoService(serviceName As String) As Object
  

Návratový typ:

Object

Parametry:

Název

Typ

Popis

serviceName

String

Název služby.

Seznam dostupných služeb naleznete na stránce s popisem modulu com::sun::star.


Příklad:

Následující příklad vytvoří funkci FileExists využívající službu com.sun.star.ucb.SimpleFileAccess k otestování toho, zda zadaná cesta odpovídá existujícímu souboru.


    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

Služby UNO mají obsáhlou dokumentaci online na stránce api.libreoffice.org. Další informace o metodách služby použité v předchozím příkladu naleznete na stránce služby SimpleFileService.


Příklad:

Následující kód používá službu com.sun.star.ui.dialogs.FilePicker pro zobrazení dialogového okna pro otevření souboru:


Sub Main
   fName = FileOpenDialog ("Vyberte, prosím, soubor")
   Print "vybraný soubor: "+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

Podpořte nás!