CreateUnoService-funksjonen

Startar ei UNO-teneste med ProcessServiceManager.

Syntaks:


     CreateUnoService(serviceName As String) As Object
  

Returtype:

Objekt

Parametrar:

Namn

Type

Beskriving

tenesteNamn

String

Tenestenamnet

Sjå ei liste over tilgjengelege tenester på referansesida com::sun::star Module.


Eksempel:

Eksempelet nedanfor lagar funksjonen FileExists som brukar tenesta com.sun.star.ucb.SimpleFileAccess for å finna ut om ein gjeven sti er ei fil som finst frå før.


    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-tenester har ein omfattande dokumentasjon på nettsida api.libreoffice.org. Besøk referansesida SimpleFileAccess Service for å læra meir om metodane som er levert av tenesta i eksempelet ovanfor.


Eksempel:

Koden nedanfor brukar tenesta com.sun.star.ui.dialogs.FilePicker for å visa eit ope fildialogvindauge:


Sub Main
   fName = FileOpenDialog ("Vel ei fil")
   Print "vald fil: "+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

Støtt oss!