iiil_ControlBox
最小化・最大化・閉じる ボタンの無効化
ScriptMakerMS BETA1.5~
iiil_ControlBox( ClassName ; WindowTitle ; type ; Value )/*FMPRO7APP,FMPRO7RUNTIME,FMPRO11.0APP,FMPRO11.0RUNTIME*/
ClassName =
FMPRO7APP
FMPRO7RUNTIME
FMPRO11.0APP
FMPRO11.0RUNTIME
FMPRO12.0APP
WindowTitle = ウインドウタイトル
type= Mini | Max | Close
Value= 0 or 1
Closeボタンは、無効の場合、グレーアウトします。
Mini | Max とも無効にすると表示が消えます。
FileMaker親ウインドウの制御
iiil_ControlBox( "FMPRO11.0APP" ; "" ; "Close" ; 0 )
1番目の引数 FM11の場合"FMPRO11.0APP"
2番目の引数WindowTitleを省略で親ウインドウの制御になります。
子ウインドウの制御
iiil_ControlBox( "FMPRO11.0APP" ; "ControlBox" ; "Mini | Max | Close" ; 0 )
2番目の引数にウインドウタイトルを指定します。
3番目の引数は Nimi Max Close の文字が入っていればOK。
MiniMaxClose とか NimiMax とか NimiClose でもOK。
※注意!
「Mini | Max」を指定した場合、ボタンが再絵画しません。(たまに再絵画する)
FileMakerのスクリプトで
ウインドウの調整[隠す]
ウインドウを選択[現在のウインドウ]
などとし、ウインドウを再絵画させるとキチンと表示し直します。
Closeの場合は、何もしなくてOK。
※※注意!
ウインドウが最大化の状態で[最大化]ボタンを無効にしても、[元に戻す]ボタンは無効になりません
したがって、子ウインドウを最大化表示のまま維持させることはできません。
ウインドウタイトルでの指定になるので、別ファイルの指定もできます。
共有ファイルの場合、ウインドウタイトが「ウインドウタイトル(ホストPC名)」となり指定が困難になります。
解決策としては、
ウインドウタイトルの設定 [現在のウインドウ; 新規タイトル: Get ( ウインドウ名 )]
とし、ウインドウタイトルを書き換えてから指定を行う事ができます。
iiil_ControlBox( "FMPRO11.0APP" ; Get ( ウインドウ名 ) ; "Close" ; 0 )
とかでもOK。
iiil_ControlBox( "" ; "ControlBox" ; "Mini | Max | Close" ; 0 )
1番目の引数 ClassName を省略した場合、
FM11
FM7~10
FM11ランタイム
FM7~10ランタイム
の順にウインドウを探します。
ファイルメーカー(ランタイムを含む)を単独で起動している場合は、ClassNameは省略でOK。
iiil_ControlBox( "" ; "ControlBox" ; "Mini | Max | Close" ; 0 )
複数起動時の注意!
FM11 と FM9 を起動し
FM11 で
iiil_ControlBox( "FMPRO7APP" ; "ControlBox" ; "Mini | Max | Close" ; 0 )
を実行すると
FM9 の ウインドウが変更されます。
FM11 と FM9 を起動し
FM9 で
iiil_ControlBox( "" ; "ControlBox" ; "Mini | Max | Close" ; 0 )
を実行すると
FM11 の ウインドウが変更されます。(ClassName省略時はFM11優先)
問題:
FileMakerの「メニューセットのインストール」と
ScriptMakerMSの「iiil_ControlBox」を使用した時、
FileMakerのメニューに不具合(メニューが右端に寄る)が起こりその後、
「メニューセットのインストール」を実行するとFileMakerがフリーズします。
また、ScriptMakerMSの「iiil_ControlBox」を実行した場合もFileMakerがフリーズします。
※ScriptMakerMSの「iiil_ControlBox」でウインドウのコントロールボックスを「無効」にした時に
問題が発生します。「有効」に設定する場合は、FileMakerのメニューに不具合は起こりません。
現象(1):
コントロールボックスが無効のときに、
FileMakerの「メニューセットのインストール」で標準以外の「メニューセット」を指定すると
FileMakerのメニューに不具合(メニューが右端に寄る)が起こります。
現象(2):
以下の様に
FileMakerの「メニューセットのインストール」
ScriptMakerMSの「iiil_ControlBox」を連続して実行した時も
FileMakerのメニューに不具合(メニューが右端に寄る)が起こります。
スクリプト サンプル:
メニューセットのインストール [「TESTメニューセット」;
フィールド設定 [テスト::スクリプトフィールド; iiil_ControlBox( "FMPRO11.0RUNTIME" ; ...)
解決策:
【コントロールボックスを無効にする|メニューセットのインストールを使用する場合】
方法:
ウインドウのコントロールボックス[最小化|最大化|閉じる]を有効にする
一時停止
メニューセットのインストール
一時停止
ウインドウのコントロールボックス[最小化|最大化|閉じる]を無効にする
スクリプト サンプル:
フィールド設定 [テスト::スクリプトフィールド; iiil_ControlBox( "FMPRO11.0RUNTIME" ;"*****" ; "Mini | Max | Close" ; 1 )
スクリプト一時停止/続行 [間隔(秒): 0]
メニューセットのインストール [「TESTメニューセット」;
スクリプト一時停止/続行 [間隔(秒): 0]
フィールド設定 [テスト::スクリプトフィールド; iiil_ControlBox( "FMPRO11.0RUNTIME" ;"*****" ; "Mini | Max | Close" ; 0 )
下、サンプル