7月のカレンダー
 123456
78910111213
14151617181920
21222324252627
28293031   
最近の日記
全体の新着
各月の日記
ユーザーRSS
hanyaさんの公開日記
02月05日
02:02
Python-UNO では uno.Any が uno.py に定義されている。このクラスは uno.invoke メソッドと組み合わせて使うのが普通である。一方でこれをよくない使いかたで使わなければうまくいかない場面がある。
struct の Any 型の要素に []com.sun.star.beans.PropertyValue などが入っている場合である。

from com.sun.star.beans import Property
from com.sun.star.ucb import Command

p = Property()
p.Name = "DocumentModel"
p.Handle = -1

c = Command()
c.Handle = -1
c.Name = "getPropertyValues"
c.Argument = uno.Any("[]com.sun.star.beans.Property", tuple([p]))

invoke 以外の場面で uno.Any を利用するとエラーが出ることがあるのでいつでも使えるわけではない。実際にブリッジで値変換のときにはこの Any を許可するかどうかのフラグがある。inovke 以外ではこれは無効になるはずである。

型変換まで詳しく書いてたけどフリーズして消えたからまたどっかにまとめよう・・・。
公開日記トップへ
oooug-jp SNS

●サイドメニュー

  • 公開日記
  • >公開日記はログインしなくても読めます

http://www.ospn.jp/

inetd