Top > OOoBasic > Generic > Containers

コンテナオブジェクト Edit

コンテナオブジェクトは複数の UNO コンポーネントをまとめるときに利用されるもので、コンテナの各要素にアクセスするために一般的なインターフェースが準備されています。同じインターフェースのメソッドが利用できるため、いくつかのインターフェースのメソッドを利用するだけでさまざまなコンテナオブジェクトを利用できるようになります。

コンテナオブジェクトで利用されるインターフェースは com.sun.star.container モジュールのものです。

Base Interface: XElementAccess とある場合には、そのインターフェースのメソッドも利用できます。(継承されているため。もちろん、参照先に Base Interface があればそのメソッドも利用できます。)

要素 Edit

XElementAccess Edit

要素にアクセスするための基本的なインターフェースです。要素にアクセスするというよりも要素が含まれているかどうか確認するためのメソッドがあります。

  • boolean hasElements()
    要素が含まれているかどうか調べます
  • type getElementType()
    要素の型を調べます

要素の型は string や long といった単純なものだけでなくインターフェースや struct なども型になります。

インデックス Edit

XIndexAccess Edit

Base Interface: XElementAccess

要素をインデックスで管理するコンテナオブジェクトで利用される。

  • long getCount()
    要素数を戻す
  • any getByIndex( [in] long Index )
    指定したインデックスの要素を戻す

getByIndex メソッドの戻す値の型はコンテナオブジェクトに依存し、XElementAccess インターフェースの getElementType メソッドで型を調べることが出来ます。

XIndexReplace Edit

Base Interface: XIndexAccess

インデックスで管理されている要素を置き換える。

  • void replaceByIndex( [in] long Index, [in] any Element )
    指定したインデックスの要素を置換する

XIndexContainer Edit

Base Interface: XIndexReplace

インデックスで管理されている要素を含むコンテナに要素を追加、削除する。

  • void insertByIndex( [in] long nIndex, [in] any Element )
    指定したインデックスに要素を挿入します
  • void removeByIndex( [in] long nIndex )
    指定したインデックスの要素を削除します

名前 Edit

XNameAccess Edit

Base Interface: XNameAccess

名前で管理されている要素にアクセスする。

  • any getByName( [in] string aName )
    名前の要素を取得する
  • []string getElementNames()
    全ての要素名を取得する
  • boolean hasByName( [in] string aName )
    名前の要素があるかどうか

XNameReplace Edit

Base Interface: XNameReplace

名前で管理されている要素を置き換える。

  • void replaceByName( [in] string aName, [in] any Element )
    名前の要素を置換する

XNameContainer Edit

Base Interface: XNameContainer

名前で管理されている要素を挿入、削除する。

  • void insertByName( [in] string aName, [in] any Element )
    名前指定で要素を挿入する
  • void removeByName ( [in] string aName )
    名前の要素を削除する

列挙 Edit

XEnumerationAccess Edit

Base Interface: XElementAccess

列挙型のアクセスを行うための XEnumeration インターフェースを取得する。

  • .container.XEnumeration createEnumeration()
    XEnumeration インターフェースを取得する

XEnumeration Edit

各要素に順にアクセスする。

  • boolean hasElements()
    要素があるかどうか
  • any nextElement()
    次の要素

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