Funktion CreateUnoService

Instanziiert einen Uno-Dienst mit dem ProcessServiceManager.

Syntax:


     CreateUnoService(serviceName As String) As Object
  

Rückgabetyp:

Objekt

Parameter:

Name

Typ

Beschreibung

serviceName

String

Der Dienstname.

Eine Liste der verfügbaren Dienste finden Sie auf der Referenzseite des Moduls com::sun::star.


Beispiel:

Das folgende Beispiel erstellt die Funktion FileExists, die den Dienst com.sun.star.ucb.SimpleFileAccess verwendet, um zu testen, ob ein bestimmter Pfad eine vorhandene Datei ist.


    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-Dienste verfügen über eine umfangreiche Online-Dokumentation auf der Website api.libreoffice.org. Besuchen Sie die Referenzseite SimpleFileAccess-Dienst, um mehr über die Methoden des bereitgestellten Diensts, der im obigen Beispiel verwendet wird, zu erfahren.


Beispiel:

Der folgende Code verwendet den Dienst com.sun.star.ui.dialogs.FilePicker, um einen Dialog zum Öffnen einer Datei anzuzeigen:


Sub Main
   fName = FileOpenDialog ("Bitte wählen Sie eine Datei")
   Print "Ausgewählte Datei: "+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

Bitte unterstützen Sie uns!