Top > OOobbs2 > 135

OOobbs2/135 Edit

  • サマリ: シェイプのアンカーの設定
  • 環境: Calc
  • 状態: 解決
  • 投稿者: 七志乃権兵衛?
  • 投稿日: 2008-08-30 (土) 17:18:03

質問 Edit

リストボックスなどのシェイプのアンカー設定を変更するには、どこのプロパティを変更すればいいのでしょうか?

回答 Edit

  • Calc では Anchor プロパティにアンカーするオブジェクト、セルまたはシートを指定します。
Sub Main
 oShape = ThisComponent.getDrawPages().getByIndex(0).getByIndex(0)
 
 oSheet = ThisComponent.getSheets().getByINdex(0)
 oShape.Anchor = oSheet ' ページにアンカー
 'exit sub
 oCell = oSheet.getCellByPosition(5,5)
 oShape.Anchor = oCell ' セルにアンカー
End Sub
  • はにゃ? 2008-08-30 (土) 20:57:01
  • Anchor プロパティ変更できるんですね。 API Reference に [ readonly ]と記述してあったので、他で変更するのかと思ってしまいました。 ところで、アンカー設定変更すると、シェイプの座標が 0, 0 になってしまうのですが、これは座標の設定はアンカー変更後にしろってことでいいのでしょうか? -- 七志乃権兵衛 2008-08-31 (日) 01:14:33
  • com.sun.star.sheet.Shape ここに記載されている Anchor プロパティですが、コントロールシェープは次のサービスをサポートしています。

これらのサービスに com.sun.star.sheet.Shape サービスはインクルードされていません。コントロールシェープの Anchor プロパティはこの IDL にしたがって実装されているわけではないようです。

また、MRI で調べるとコントロールシェープなどの Anchor プロパティは ReadOnly になっていません。

時々こういうことがあります。IDL Guide だけ見ていると設定するプロパティがわからなかったりします。

アンカーの種類を変更すると座標が 0,0 になるのは座標系が変わってしまうので仕方ないと思います。シートだと左上が 0,0、セルだとセルの左上が 0,0 になります。

  • はにゃ? 2008-08-31 (日) 09:23:10
  • ありがとうございます。 OOoは構造が入り組んでて難しいですね。 -- 七志乃権兵衛 2008-08-31 (日) 12:17:44

感想,コメント,メモ Edit



Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes