SSブログ

Active tab名を取得する [FileMaker]

2011/2/19に札幌で開催されたFileMakerスキルアップ・ワークショップで、Active tab名を取得する汎用スクリプトを提示しました。このとき、タブコントロール内にさらにタブコントロールがあっても正しく取得すると述べましたが、やはりだめでした。タブコントロール内が入れ子になっていない場合に正しく動作します。

【スクリプトの目的
タブコントロールのあるレイアウトから別のレイアウトに移動した後、元に戻ってくると、デフォールトのタブに戻ってしまう。そこで、レイアウト移動時に現在表示されているタブコントロールのタブ名を取得して変数$$activetabに入れておき、戻ってきたときにこの変数名のオブジェクトに移動するようにすると、現在表示されているタブに戻ることができる。

【スクリプト「ActiveTabの取得」】
・変数を設定 [$$activetab; 値:""]
・変数を設定 [$objects; 値:Substitute ( LayoutObjectNames ( Get ( ファイル名 ) ; Get ( レイアウト名 ) ) ; [ "<¶" ; "" ] ; [ ">¶" ; "" ] ; [ ">" ; "" ] )]
・変数を設定 [$totalcount; 値:PatternCount ( $objects ; "¶" ) + 1]
・変数を設定 [$count; 値:1]
・Loop
・ 変数を設定 [$objectname; 値:Substitute ( MiddleValues ( $objects ; $count ; 1 ) ; "¶" ; "" )]
・ If [GetLayoutObjectAttribute ( $objectname ; "isFrontTabPanel" ) = 1]
・  変数を設定 [$$activetab; 値:$objectname]
・  変数を設定 [$count; 値:$count + 1]
・ Else
・  Exit Loop If [$count = $totalcount]
・  変数を設定 [$count; 値:$count + 1]
・ End If
・End Loop

サンプルファイル ActiveTab.fp7(ZIP圧縮: 01_ActiveTab.zip)をアップしておきますのでお試しください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0