公開日: 04/01/2021

ディスプレイボックス

他の例については、『スクリプトガイド』の表示ツリーおよびJMPの[スクリプトの索引]を参照してください。

すべてのディスプレイボックス

db<<Add Text Annotation(Text(string), Text Box(<x1, y1, x2, y2>))

ピクセル単位で指定した位置に、文字列(引用符付きのstring)を含むテキスト注釈ボックスを描画する。Text Box引数によって、テキスト注釈ボックスを描く位置を、ウィンドウにおける相対的な位置(左上から右下)で指定します。

x1y1x2y2には、グラフの軸の値ではなく、ウィンドウ内のピクセル単位の位置を指定します。テキストボックスが表示される位置は、ユーザーのウィンドウサイズやディスプレイの解像度などにより異なる可能性があります。

db<<Append(db2)

db2dbの最後の子として追加する。

db<<Child

ボックスの子を戻す。

db<<Class Name

ディスプレイボックスの表示クラス名を戻す。

db<<Clone Box

ディスプレイボックスの新しいコピーを作成する。

db<<Close Window

ディスプレイボックスが表示されているウィンドウを閉じる。

db<<Copy Picture

ディスプレイボックスのイメージをクリップボード上に置く。

db<<Delete

ディスプレイボックスを削除する。

db<<Enable(Boolean)

ディスプレイボックスを操作可能にするかどうかを指定する。0の場合はディスプレイボックスを操作できず、1だとディスプレイボックスを操作できます。

db<<Get HTML

ディスプレイボックスのHTMLソースを含んだ文字列を戻す。

db<<Get Journal

ディスプレイボックスのジャーナルソースを含んだ文字列を戻す。

db<<Get Menu Item State(index)

指定されたポップアップメニュー項目の状態を戻す。状態は、通常(0)、選択されている(1)、または選択不可(-1)のいずれか。

db<<Get Menu Items

ボタンがクリックされたときに呼び出されるポップアップメニューの項目を戻す。サブメニューについては、<<Get Submenu(index)を参照してください。メニュー項目はリストで戻されます。

db<<Get Menu Script

オブジェクトに指定されているメニュースクリプトを戻す。

db<<Get Page Setup()

ページ設定の設定内容を戻す。

下の例では、新しいウィンドウを作成し、ページ設定の設定内容を戻します。

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" )}

db<<Get Picture( <Scale(n)> )

ディスプレイボックス(db)をイメージオブジェクトとして取得する。Scale(n)引数は、元のイメージサイズが基準となります。たとえば、Scale(2)を指定すると、イメージオブジェクトのサイズが2倍になります。

db<<Get RTF

ディスプレイボックスのRTFソースを含んだ文字列を戻す。

db<<Get Script

ディスプレイボックスを再作成するためのスクリプトを戻す。

db<<Get Size

{ x, y }または{ h, v }をピクセルで戻す。

xy = DisplayBox << Get Size;

xとyをピクセルで戻す。

{ x, y } = DisplayBox << Get Size;

db<<Get Submenu(index)

指定されたメニュー項目の下位にあるサブメニュー項目の数を戻す。

下の例は、"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, "," ) ), inc++,
	Insert Into( submenus, obj << Get Submenu( inc ) );
);
submenus;

{2, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}

このログ出力は、インデックス(1)にサブメニュー項目が2つ、インデックス(3)にサブメニュー項目が3つあることを示しています。

db<<Get Text

ディスプレイボックスのテキストを含んだ文字列を戻す。

db<<Horizontal Alignment(position)

ディスプレイボックスが入れ子になっている場合、子ディスプレイボックスの位置をpositionで指定する。デフォルト値は"Left"(左揃え)です。"Center"(中央揃え)、または"Right"(右揃え)を指定することもできます。

New Window( "例",
	Outline Box( "親ディスプレイボックス",
		Button Box( "OK", <<Horizontal Alignment( "Center" ) )
	)
);

db<<Inval

ウィンドウ内のディスプレイボックス領域を無効にする。ウィンドウは、次回、オペレーティングシステムによってウィンドウが更新される際(たとえば、ユーザがディスプレイボックスのサイズを変更したとき)に、更新されます。

メモ

Wait(0)を使う代わりに、メッセージ<<Update Windowの使用を検討してください。Wait(n)を使う場合は、nをどの程度大きい値にするか決めておく必要がある点が問題です。

ディスプレイボックスの多くのメッセージは(<<Set Textなど)、ボックスを自動的に無効としてマークするため、<<Invalメッセージは通常不要です。スライダとJSLコールバックを使うインタラクティブなスクリプトでは、ディスプレイの各所をスライダと同期させるために、<<Update Windowが必要になる場合があります。

db<<Is Enabled

コントロールが有効になっているかどうかの状態を戻す。このメッセージは、Busy Light Box()Button Box()Calendar Box()Check Box()Col List Box()Combo Box()Completion Box()Filter Col Selector()gtext()List Box()Number Edit Box()Popup Box()Radio Box()Range Slider Box()Slider Box()Spin Box()Text Edit Box()Tree Box()Tree Map Box()Tree Map Seg()でサポートされています。

db<<Journal

ディスプレイボックスをジャーナルに追加する。

db<<Journal Window

ディスプレイボックスが表示されているウィンドウ全体をジャーナルに追加する。Journalと比較してください。

db<<Move Window(x, y)

ウィンドウをスクリーン上の(x, y)の位置に移動する。

db<<Page Break

ディスプレイボックスの前にページ区切りを挿入する。

db<<Parent

このディスプレイボックスの親を戻す。

db<<Prepend(db2)

db2を表示ツリーのdbの前に追加する。

db<<Prev Sib

ディスプレイボックスの前の兄弟(同レベルのもの)を戻す。

db<<Reshow

ウィンドウ内のディスプレイボックスの領域を無効にし、ウィンドウの内容を更新する。

db<<Save Capture(<path>, <format>, <Add Sibling(n)>)

ディスプレイボックスをスクリーンキャプチャーし、指定のパス(引用符付きのpath)に、指定の形式(引用符付きのformat)のグラフィックで保存する。オプションの引数(Add Sibling)は、取り込む兄弟ディスプレイボックスの数を指定します。デフォルト値は1で、この場合、指定のディスプレイボックスだけを取り込みます。ディスプレイボックスが、別のウィンドウに隠されていたり、スクロールしないと表示されなくなっていたりする時には注意が必要です。ディスプレイボックスが画面に表示されていない場合は、期待どおりの結果にはならないかもしれません。

パスを省略した場合、パスの実行時にファイルに名前を付けて保存するよう促されます。

db<<Save HTML(<path>, <format>)

HTMLソースファイルとグラフィックファイルのフォルダを、指定のパス(引用符付きのpath)に指定の形式(引用符付きのformat)で保存する。path引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。

db<<Save Interactive HTML(<path>, "Is Static")

ディスプレイボックスを、インタラクティブHTML機能を使ったWebページとして指定のパス(引用符付きのpath)に保存する。こうすれば、JMPを使用していないユーザーでも、データを見ることができます。データはWebページに組み込まれます。

引数

path

Webオプページの保存場所を示すオプションの引用符付きのパス(path)。

"Is Static"

Webページからデータを削除し、そのページの静的なコピーを保存する。

dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = dt << Bivariate(y(:Name("体重(ポンド)")), x(:Name("身長( インチ)")));
rbiv = (biv << Report);
rbiv << Save Interactive HTML( "$DOCUMENTS/MyInteractiveHTML.htm" );

db<<Save Journal(<path>)

ボックスのジャーナルソースを指定のパス(引用符付きのpath)に保存する。引数を省略した場合、グラフィックに名前を付け、タイプを指定するよう促されます。

db<<Save MSWord(<path>)

(Windowsのみ)ディスプレイボックスをMicrosoft Word文書として指定のパス(引用符付きのpath)を保存する。path引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。

db<<Save PDF(<path>, <Show Page Setup(Boolean)>, <Portrait(Boolean)>)

説明

ディスプレイボックスをPDFファイルとして指定のパス(引用符付きのpath)に保存する。

オプションの引数

path

ファイルを指定のパス(引用符付きのpath)に保存する。この引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。

Show Page Setup(Boolean)

(Windowsのみ)用紙の向きやヘッダ、フッタ、余白、ページの倍率、用紙サイズなどが指定できる「ページ設定」ウィンドウを表示する。

Portrait(Boolean)

内容を縦または横に表示する。

ノート

PDFファイルには、ヘッダとフッタが含まれます。ヘッダやフッタを省略したい場合は、Save Pictureを使用してください。

db<<Save Picture(<path>, <format>)

説明

ディスプレイボックスの画像を指定のパス(引用符付きのpath)に指定の形式(引用符付きのformat)で保存する。

メモ

引用符付きのpath引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。

有効な形式には、"PDF""PNG""GIF""JPG""JPEG""EPS""SVG""EMF"があります。

Windowsの場合は、環境設定の[Windowsのみ]カテゴリで解像度(DPI)を指定できます。または、次のスクリプトを使用できます。

Pref( Save Image DPI( number ) );

macOSでは、オペレーティングシステムによってDPIが決められます。

レポートを、ヘッダやフッタのないPDFファイルとしてエクスポートするには、Save Pictureを使用します。ヘッダやフッタを含めるには、Save PDFを使用してください。

db<<Save Presentation(<path>, <Template(path)>, <Insert("Begin"|"End"|n)|Replace("Begin"|"End"|n)|Append>, <Outline Titles(title location)>, <format>)

Microsoft PowerPointファイルにディスプレイボックスを保存する。このファイルは、任意のプレゼンテーションソフトウェアプログラムで開くことができます。

オプションの引数

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"を指定してください。

引数を指定しなかった場合、ユーザは、ファイルに名前を付けて保存するよう促されます。

db<<Save RTF(<path>, format)

ファイルを、指定のパス(引用符付きのpath)に指定の形式(引用符付きのformat)で保存する。path引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。

db<<Save Text(<path>, format)

ボックスのテキストを含むファイルを、指定のパス(引用符付きのpath)に指定の形式(引用符付きのformat)で保存する。path引数を省略した場合、スクリプトを実行した時点で、ファイルに名前を付けて保存するよう促されます。

db<<Scroll Window(Display Box|relative-vertical-pixels|relative-horizontal-pixels, relative-vertical-pixels|{absolute-vertical-pixels, absolute-horizontal-pixels})

ディスプレイボックスが表示されているウィンドウをスクロールする。

db<<Select

db<<Deselect

ディスプレイボックスを選択(強調表示)、または選択解除する。

db<<Set Menu Item State(index, 0|1|-1)

indexで指定されたポップアップメニュー項目の状態を設定する。通常(0)、選択されている(1)、選択不可(-1)のいずれか。

db<<Set Page Setup<Margins(left, right, top, bottom)>, <Scale(s)>,<Portrait(Boolean)>, <Paper Size(paper size)>)

db<<Set Page Setup<Margins({left, right, top, bottom})>, <Scale(s)>,<Portrait(Boolean)>, <Paper Size(paper size)>)

ページ設定を行う。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" )
);

db<<Set Print Headers(left header, center header, right header)

説明

印刷する際の左、中央、右のヘッダを設定する。

w = New Window( "ウィンドウ", Text Box( "ヘッダの例" ) );
w << Set Print Headers(
	"Today is:&d;", // 左
	"&wt;", // 中央
	"ページ &pn; / &pc;" // 右
);
w << Print Window;

db<<Set Print Footers(left footer, center footer, right footer)

説明

印刷する際の左、中央、右のフッタを設定する。

w = New Window( "ウィンドウ", Text Box( "フッタの例" ) );
w << Set Print Footers(
	"Today is:&d;", // 左
	"&wt;", // 中央
	"ページ &pn; / &pc;" // 右
);
w << Print Window;

db<<Set Submenu (index, submenu count)

説明

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項目

db<<Set Report Title(title)

レポートの新しいタイトルを設定する。titleは引用符付きです。

Show Properties(db)

与えられたディスプレイボックスで利用できるメッセージを表示する。

db<<Sib

ディスプレイボックスの兄弟(同レベルのもの)を戻す。

db<<Sib Append(db2)

ディスプレイボックスdbと同レベルにディスプレイボックスdb2を追加する。引数は、評価結果がディスプレイボックスへの参照である必要があります。

db<<Size Window(x, y)

ディスプレイボックスが表示されているウィンドウのサイズを変更する。

db<<Update Window

ディスプレイボックスを(オペレーティングシステムによっては、他のウィンドウも同時に)保持するウィンドウに無効化された領域がある場合に、そのウィンドウを更新する。無効化されたボックス領域には、新しいコンテンツが再描画されます。

メモ

スライダとJSLコールバックを組み合わせた一部のインタラクティブなJSLスクリプトでは、<<Update Windowを使用して、ディスプレイの各部をスライダと同期させる必要があります。

db<<Zoom Window

内容がすべて表示されるようにウィンドウのサイズを拡大する。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).