3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

(OpenOffice Basic)ファイル保存ダイアログを表示する

ファイルの保存ダイアログを表示するには下記のようなコードにすればいいようです。

Dim oFilePicker As Object

Dim nDlgResult As Integer

Dim sFiles() As String

Dim sFilename As String

'dialogs.FilePicker でダイアログが使える

oFilePicker = createUnoService("com.sun.star.ui.dialogs.FilePicker")

' 保存するダイアログの場合、このように設定

oFilePicker.initialize(Array(com.sun.star.ui.dialogs.TemplateDescription.FILESAVE_SIMPLE))

 

' ダイアログの初期化

oFilePicker.Title = "CSVデータ保存"

oFilePicker.appendFilter( "CSVファイル (*.csv)", "*.csv" )

oFilePicker.setCurrentFilter( "CSVファイル (*.csv)" )

oFilePicker.setDefaultName("デフォルトファイル名")

'ダイアログ表示

nDlgResult = oFilePicker.execute()

' 開く(OK)が押された場合は、1が返される

IF nDlgResult <> 1 Then

Exit Sub

END IF

sFiles() = oFilePicker.getFiles()

sFilename = sFiles(0)

参考:

OpenOffice.org Basic - Wikibooks

api: Service FilePicker