新規作成日 2025-08-14
最終更新日
原文「CreateUnoService Function」の和訳。LibreOffice 25.2ヘルプより
原文取得日 2025-08-14
ProcessServiceManager を使用して、Uno サービスをインスタンス化します。
構文:
CreateUnoService(serviceName As String) As Object
利用可能なサービスのリストについては、com::sun::star モジュールのリファレンス ページを参照してください:
例:
次の例では、サービス com.sun.star.ucb.SimpleFileAccess を使用して、指定されたパスが、既存のファイルであるかどうかをテストする関数 FileExists を作成します。
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
UNO サービスについては、api.libreoffice.org Web サイトに広範なオンライン ドキュメントが用意されています。上記の例で使用されているサービスによって提供されるメソッドの詳細については、SimpleFileAccess サービスのリファレンス ページを参照してください。
例:
次のコードは、ファイル・オープン・ダイアログを表示するために、サービスcom.sun.star.ui.dialogs.FilePickerを使用します:
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")
filepicker.Title = title
If res.OK = filepicker.execute() Then
files = filepicker.getSelectedFiles()
FileOpenDialog=files(0)
EndIf
End Function ' Main
関連項目
