Macros in Open Source Office Suites for Dummies 0001 MsgBox01 OK with StarBasic


Basic(star,openoffice,libreoffice)

デフォルト動作を見てみる。
OKボタンのみが出て、タイトル部に実行環境の情報(LibreOfficeの場合は版数を含む情報)が入る。
OKをクリックすると閉じる。

Sub StarBasic0001
MsgBox "Hello from StarBasic"
End Sub
StarBasic 0001 MsgBox 

https://help.libreoffice.org/6.2/ja/text/sbasic/shared/03010102.html を見ると
MsgBox (Text As String [,Type As Integer [,Dialogtitle As String]])
という書式でTypeの部分は表示ボタンの動作や表示に対応する整数を指定するのだが、指定しないと0指定と同じようである。


$$
\begin{array}{l:c:l} \textbf{Named Constant} & \textbf{Integer Value} & \textbf{Definition} \\ \hline MB\_OK&0&Display OK button only.\\ \hline MB\_OKCANCEL&1&Display OK and Cancel buttons.\\ \hline MB\_ABORTRETRYCANCEL&2&Display Abort, Retry, and Ignore buttons.\\ \hline MB\_YESNOCANCEL&3&Display Yes, No, and Cancel buttons.\\ \hline MB\_YESNO&4&Display Yes and No buttons.\\ \hline MB\_RETRYCANCEL&5&Display Retry and Cancel buttons.\\ \hline MB\_ICONSTOP&16&Add the Stop icon to the dialog.\\ \hline MB\_ICONQUESTION&32&Add the Question icon to the dialog.\\ \hline MB\_ICONEXCLAMATION&48&Add the Exclamation Point icon to the dialog. \\ \hline MB\_ICONINFORMATION&64&Add the Information icon to the dialog.\\  &128&First button in the dialog as default button.\\ \hline MB\_DEFBUTTON2&256&Second button in the dialog as default button. \\ \hline MB\_DEFBUTTON3&512&Third button in the dialog as default button. \\ \end{array}
$$



2番目の引数Typeに 0 を指定して確かめてみる。

Sub StarBasic0001type0
MsgBox "Hello from StarBasic type 0", 0
End Sub
StarBasic 0001type0 MsgBox

3番目の引数Dialogtitleに "0001"  を指定して確かめてみる。

Sub StarBasic0001type0withTitle
MsgBox "Hello from StarBasic type 0", 0, "0001"
End Sub
StarBasic0001type0withTitle

動作確認環境

OS: Ubuntu 24.04 LTS

$ grep DISTRIB_DESCRIPTION /etc/lsb-release
DISTRIB_DESCRIPTION="Ubuntu 24.04 LTS"

Office Suites: LibreOffice 24.2.5

$ apt list -a libreoffice-base
一覧表示... 完了
libreoffice-base/noble-updates,noble-security 4:24.2.5-0ubuntu0.24.04.2 amd64
libreoffice-base/noble 4:24.2.2-0ubuntu1 amd64

参照

staroffice macro menu
MsgBox macro menu
0001 MsgBox type0 starbasic libreoffice
0001 MsgBox type0 starbasic openoffice
0001 MsgBox type0 vbaoption libreoffice
0001 MsgBox type0 vbaoption openoffice
0001 MsgBox type0 beanshell libreoffice
0001 MsgBox type0 beanshell openoffice
0001 MsgBox type0 javascript libreoffice
0001 MsgBox type0 javascript openoffice
0001 MsgBox type0 python libreoffice
0001 MsgBox type0 python openoffice

この記事が気に入ったらサポートをしてみませんか?