Functie CreateUnoService

Maakt met de ProcessServiceManager een Uno-service aan.

Syntaxis:


     CreateUnoService(serviceName As String) As Object
  

Retourtype:

Object

Parameters:

Naam

Type

Beschrijving

serviceNaam

String

De naam van de service.

Een lijst met beschikbare services: com::sun::star Module.


Voorbeeld:

In het voorbeeld wordt met de functie FileExists, die de service com.sun.star.ucb.SimpleFileAccess gebruikt, getest of het bestand (dat met het pad is aangegeven) bestaat.


    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

Er is een uitgebreide online documentatie van de UNO-services op de api.libreoffice.org website. Een beschrijving van de in het voorbeeld gebruikte methodes staat hier: Service SimpleFileAccess.


Voorbeeld:

De volgende code gebruikt de dienst com.sun.star.ui.dialogs.FilePicker om een open dialoogvenster te tonen:


Sub Main
   fNaam = BestandOpenenDialoog ("Kies een bestand")
   Print "Gekozen bestand: "+fNaam
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

Help ons, alstublieft!