- OpenLaszlo紹介
- プログラム構造関連
- スクリプト
- Javascript基礎
- 基礎知識
- ビュー<view>
- レイアウト
- 動かす
- 入力デバイス
- 文字
- 数値
- 日付
- オブジェクト指向
- 標準コンポーネント
- データの扱い
- データ操作(基礎)
- 応用編
–
一覧リストから一つ選択するとその詳細情報が別画面で出てくる、のサンプル。
setFromPointer() と setPointer() の例を紹介します。
どちらもよく似ていますが、引数が違います。
LzDatapointer.setFromPointer(dp) ・・・ 引数dpはデータポインタ(LzDataPointer) LzDatapointer.setPointer(p)・・・・・・ 引数pはデータノード(LzDataNode)
B.datapath.setFromPointer(A.datapath) ※ビューAのデータパスを、ビューBに渡します。
▼国名をクリックしてみてください
<?xml version="1.0" encoding="UTF-8"?> <canvas proxied="false" bgcolor="0xeeeeee"> <dataset name="ds" > <root> <data country="イギリス" capital="ロンドン" lang="英語" /> <data country="イタリア" capital="ローマ" lang="イタリア語" /> <data country="オランダ" capital="アムステルダム" lang="オランダ語" /> <data country="スペイン" capital="マドリード" lang="スペイン語" /> <data country="フランス" capital="パリ" lang="フランス語" /> <data country="モナコ公国" capital="モナコ" lang="フランス語" /> <data country="ルーマニア" capital="ブカレスト" lang="ルーマニア語" /> </root> </dataset> <window name="details" title="$path{'@country'}" x="80" width="150" height="100" bgcolor="0xffffff"> <datapath/> <simplelayout/> <text datapath="@country" fgcolor="0xff0000" fontstyle="bold"/> <text datapath="@capital"/> <text datapath="@lang"/> </window> <view width="70" height="100" bgcolor="0xffffff" clip="true"> <vbox> <text datapath="ds:/root/data/@country"> <handler name="onclick"> details.datapath.setFromPointer(this.datapath); </handler> </text> </vbox> <scrollbar/> </view> </canvas>
B.datapath.setPointer(A.datapath.p) ※ビューAのデータパスを、ビューBに渡します。
▼国名をクリックしてみてください
<?xml version="1.0" encoding="UTF-8"?> <canvas proxied="false" bgcolor="0xeeeeee"> <dataset name="ds" > <root> <data country="イギリス" capital="ロンドン" lang="英語" /> <data country="イタリア" capital="ローマ" lang="イタリア語" /> <data country="オランダ" capital="アムステルダム" lang="オランダ語" /> <data country="スペイン" capital="マドリード" lang="スペイン語" /> <data country="フランス" capital="パリ" lang="フランス語" /> <data country="モナコ公国" capital="モナコ" lang="フランス語" /> <data country="ルーマニア" capital="ブカレスト" lang="ルーマニア語" /> </root> </dataset> <window name="details" title="$path{'@country'}" x="80" width="150" height="100" bgcolor="0xffffff"> <datapath/> <simplelayout/> <text datapath="@country" fgcolor="0xff0000" fontstyle="bold"/> <text datapath="@capital"/> <text datapath="@lang"/> </window> <view width="70" height="100" bgcolor="0xffffff" clip="true"> <vbox> <text datapath="ds:/root/data/@country"> <handler name="onclick"> details.datapath.setPointer(this.datapath.p); </handler> </text> </vbox> <scrollbar/> </view> </canvas>