この節では、ディスプレイボックスに使用できるJSLメッセージをご紹介します。他の例については、『スクリプトガイド』の表示ツリーおよびJMPの[スクリプトの索引]を参照してください。
説明
ボタンがクリックされたときに呼び出されるポップアップメニューの項目を戻す。メニュー項目はリストで戻されます。
次も参照
サブメニューについては、db<<Get Submenu(index)を参照してください。
オブジェクトに指定されているメニュースクリプトを戻す。
ページ設定の設定内容を戻す。
例
下の例では、新しいウィンドウを作成し、ページ設定の設定内容を戻します。
w = New Window( "Window",
Text Box( "Page Setup Test" )
);
w << Get Page Setup();
メッセージの結果は次のとおりです。
{Margins( {0.75, 0.75, 0.75, 0.75} ), Scale( 1 ), Portrait( 1 ),
Paper Size( "Letter" )}
{ x, y }または{ h, v }をピクセルで戻す。
xy = DisplayBox << Get Size;
xとyをピクセルで戻す。
{ x, y } = DisplayBox << Get Size;
指定されたメニュー項目の下位にあるサブメニュー項目の数を戻す。
例
下の例は、"A"、"B"、"C"というメニュー項目があるメニューを作成します。"A"にはサブメニュー項目"A1"と"A2"を、"B"にはサブメニュー項目"B1"、"B2"、"B3"を設定しています。<<Get Submenu(inc)は、インデックスを指定した各メニュー項目の下位にあるサブメニュー項目の数を戻します。
New Window( "Title",
obj = Outline Box( "title" ) );
submenus = { };
obj << Set Menu Script(
{"A", "", "A1", Print( "A1" ), "A2", Print( "A2" ),
"B", "", "B1", Print( "B1" ), "B2", Print( "B2" ), "B3", Print( "B3" ),
"C", Print( "C" )}
);
obj << Set Submenu( 1, 2 ); // メニューA、サブメニューにA1とA2の2項目
obj << Set Submenu( 4, 3 ); // メニューB、サブメニューにB1、B2、B3の3項目
For( inc = 1, inc <= N Items( Words( obj << Get Menu Script, "," ) )/2, inc++,
Insert Into( submenus, obj << Get Submenu( inc ) );
);
submenus;
{2, 0, 0, 3, 0, 0, 0, 0}
このログ出力は、インデックス(1)にサブメニュー項目が2つ、インデックス(3)にサブメニュー項目が3つあることを示しています。
例
New Window( "例",
Outline Box( "親ディスプレイボックス",
Button Box( "OK", <<Horizontal Alignment( "Center" ) )
)
);
ウィンドウ内のディスプレイボックス領域を無効にする。ウィンドウは、次回、オペレーティングシステムによってウィンドウが更新される際(たとえば、ユーザがディスプレイボックスのサイズを変更したとき)に、更新されます。
メモ
Wait(0)を使う代わりに、メッセージ<<Update Windowの使用を検討してください。Wait(n)を使う場合は、nをどの程度大きい値にするか決めておく必要がある点が問題です。
ディスプレイボックスの多くのメッセージは(<<Set Textなど)、ボックスを自動的に無効としてマークするため、<<Invalメッセージは通常不要です。スライダとJSLコールバックを使うインタラクティブなスクリプトでは、ディスプレイの各所をスライダと同期させるために、<<Update Windowが必要になる場合があります。
引数
path
Webページの保存場所を示すオプションの引用符付きのパス(path)。
"Is Static"
Webページからデータを削除し、そのページの静的なコピーを保存する。
例
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = dt << Bivariate( y( :"体重(ポンド)"n ), x( :"身長(インチ)"n ) );
rbiv = (biv << Report);
rbiv << Save Interactive HTML( "$DOCUMENTS/MyInteractiveHTML.htm" );
説明
ディスプレイボックスをPDFファイルとして指定のパス(引用符付きのpath)に保存する。
オプションの引数
path
ファイルを指定のパス(引用符付きのpath)に保存する。この引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。
Show Page Setup(Boolean)
(Windowsのみ)用紙の向きやヘッダ、フッタ、余白、ページの倍率、用紙サイズなどが指定できる「ページ設定」ウィンドウを表示する。
Portrait(Boolean)
内容を縦または横に表示する。
メモ
PDFファイルには、ヘッダとフッタが含まれます。ヘッダやフッタを省略したい場合は、Save Pictureを使用してください。
説明
メモ
• 引用符付きのpath引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。
• 有効な形式には、"PDF"、"PNG"、"GIF"、"JPG"、"JPEG"、"EPS"、"SVG"、"EMF"があります。
• Windowsの場合は、環境設定の[Windowsのみ]カテゴリで解像度(DPI)を指定できます。または、次のスクリプトを使用できます。
Pref( Save Image DPI( number ) );
• macOSでは、オペレーティングシステムによってDPIが決められます。
• レポートを、ヘッダやフッタのないPDFファイルとしてエクスポートするには、Save Pictureを使用します。ヘッダやフッタを含めるには、Save PDFを使用してください。
オプションの引数
path
ファイルを指定のパス(引用符付きのpath)に保存する。ファイル名には拡張子.pptxを含める必要があります。path引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。
Template(path)
カスタムのPowerPointテンプレートのパス(引用符付きのpath)を指定する。この引数が指定されていない場合は、インストールディレクトリ内のpptxフォルダにあるデフォルトのテンプレートが使用されます。
テンプレートには簡単なテーブルを含めるようにしてください。そうでない場合は、レポートテーブルにデフォルトのテーブル形式が適用されます。Windowsでの例については、JMPインストールフォルダの¥pptx¥JMPExportTemplate.pptxを参照してください。
Insert
既存のプレゼンテーション内でスライドを挿入する位置を指定する。
– nは、スライドをn番目のスライドとして挿入することを意味します。
– "Begin"は、スライドをプレゼンテーションの冒頭に挿入します。
– "End"は、スライドをプレゼンテーションの末尾に挿入します。
Replace
既存のプレゼンテーション内で交換するスライドを指定する。引数は、Insertの場合と同様に、n、"Begin"、"End"です。
Append
スライドを既存のプレゼンテーションの末尾に挿入する。
Outline Titles
スライドのアウトラインタイトルと親アウトラインタイトルの位置。デフォルトでは、スライドの内容の上に1つ上の親アウトラインタイトルがスライドタイトルとして表示され、他にも親アウトラインタイトルがある場合はスライドの左下角に表示されます。
– "None"は、グラフィックの上のスライドタイトルとアウトラインタイトルを省略します。
– "Hide"は、アウトラインタイトルを省略します。
– "TopLeft"(左上)、"TopRight"(右上)、"BottomLeft"(左下)、"BottomRight"(右下)により、スライド上の親アウトラインタイトルの位置が決まります。
format
埋め込みグラフィックの形式。オプションは、"Native"、"EMF"、"PNG"、"JPG"、"BMP"、"GIF"、"TIF"です。Windowsの場合、ネイティブ形式はEMFです。macOSの場合、ネイティブ形式はPDFです。互換性の問題については、「メモ」を参照してください。この引数を指定しなかった場合は、[一般]環境設定の[PowerPointのイメージ形式]での設定が適用されます。
メモ
Windowsは、macOSで作成したネイティブのPDFグラフィックをサポートしていません。macOSは、Windowsで作成したネイティブのEMFグラフィックをサポートしていません。クロスプラットフォームの互換性を保つためには、"PNG"、"JPG"、"GIF"、または"TIF"を指定してください。
引数を指定しなかった場合、ユーザは、ファイルに名前を付けて保存するよう促されます。
ページ設定を行う。margins(余白)はセンチ単位で指定します。scale変数sは、10(1000%)から0.2(20%)の範囲の数値で、デフォルト値は1(100%)です。portraitが真(1)の場合、ページは縦向き、それ以外の場合は横向きです。paper sizeには、用紙サイズ("Letter"、"Legal"など)を指定します。
例
下の例では、新しいウィンドウを作成し、ページ設定の各項目を設定します。
w = New Window( "Window",
Text Box( "Page Setup Test" )
);
w << Set page setup(
margins( 1, 1, 1, 1 ),
scale( 1 ),
portrait( 1 ),
paper size( "Letter" )
);
説明
例
w = New Window( "ウィンドウ", Text Box( "ヘッダの例" ) );
w << Set Print Headers(
"日付: &d;", // 左
"&wt;", // 中央
"ページ &pn; / &pc;" // 右
);
w << Print Window;
説明
例
w = New Window( "ウィンドウ", Text Box( "フッタの例" ) );
w << Set Print Footers(
"日付: &d;", // 左
"&wt;", // 中央
"ページ &pn; / &pc;" // 右
);
w << Print Window;
説明
ディスプレイボックスの縦方向と横方向の伸縮動作を設定する。
引数
"Window"
ボックスは、ウィンドウのサイズに応じて変わる。サイズはボックスの最小値と最大値のプロパティによって決まります。
"Fill"
ボックスは、コンテナいっぱいのサイズになる。
"Off"
ボックスは伸縮しない。
"Neutral"
多くのボックスは最初ニュートラルな状態にある。最下位のボックス(子を持たないボックス)がニュートラルな場合は、"Off"となります。ほとんどのコンテナボックスでは、子ボックスの伸縮動作(および最小値と最大値)によって動作が決まります。
説明
indexで指定した番号のメニュー項目に対して、指定した数のサブメニュー項目を設定する。
例
下の例は、"A"、"B"、"C"というメニュー項目があるメニューを作成します。"A"にはサブメニュー項目"A1"と"A2"を、"B"にはサブメニュー項目"B1"、"B2"、"B3"を設定しています。
New Window( "title", ob = Outline Box( "title" ) );
ob << Set Menu Script(
{"A", "", "A1", Print( "A1" ), "A2", Print( "A2" ),
"B", "", "B1", Print( "B1" ), "B2", Print( "B2" ), "B3", Print( "B3" ),
"C", Print( "C" )}
);
ob << Set Submenu(1, 2); // メニューA、サブメニューにA1とA2の2項目
ob << Set Submenu(4, 3); // メニューB、サブメニューにB1、B2、B3の3項目
メモ