- サマリ: アウトプット用サービス
- 環境: General
- 状態: 投稿
- 投稿者: はにゃ??
- 投稿日: 2010-03-07 (日) 00:43:10
質問 
標準出力みたいにアウトプットを表示するウィンドウを提供するサービス。PyUNO が必要。
OOo Basic でちょっとコードを書いていると面倒になってきたので作成。Windows だと標準出力が利用できないが OOo Basic ではそもそも標準出力が使えないのでちょっと print ... したくてもできないのでやになってきた。Windows 上での Python 用に作ったものをいじってサービス化したもの。
SubOut-0.0.1.oxt
使いかた
- パッケージを拡張機能マネージャからインストール
- できれば OOo を再起動します
- mytools.SubOutput サービスをインスタンス化して css.task.XJobExecutor インターフェースの trigger メソッドに出力したい文字列を引数として呼び出します。
ウィンドウはサービスで共有、再利用されます。
使いかたその2
想定する使いかたはこんな感じ。bHideMessage をいじる 0 <-> 1 だけで表示は切り替えられる。
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| | Sub Main
printf("to do \nsomething." & chr(10) & "hoggeg")
printf "にほんご"
End Sub
Dim oSubOutput As Object
Const bHideMessage = 0
Sub printf( sText As String )
bBool = bHideMessage
If bBool Then Exit Sub
If IsNull(oSubOutput) Then oSubOutput = CreateUnoService("mytools.SubOutput")
If NOT IsNull(oSubOutput) Then
On Error GoTo Handler
oSubOutput.trigger(sText)
Handler:
End If
End Sub
|
削除
- パッケージを拡張機能マネージャから削除します
- 必要に応じて OOo を再起動します
ToDo
- フォント変更とか
- オプションを指定しての出力。面倒だったので既存のインターフェースを利用。IDL の書きかたでも再利用が推奨されているし・・・。
回答 
感想,コメント,メモ 