Java クラスのインポート済みタイプを作成
Z and I Emulator for Web マクロは、Java クラスをインポートする方法として、インポート型を使用します。つまり、インポート型をまず作成し、特定の Java クラスに関連付ける必要が あります。この作業は、マクロごとに、Java クラス 1 つに対して 1 回のみ行います。インポート済みタイプを作成するには、次の手順で行います。
- 「変数 (Variables)」タブの「インポート (Import)」ボタンを クリックする。「インポート」ポップアップ・ウィンドウが 表示されます。
- 「インポート型」リスト・ボックスで、項目「
<new imported type>」を選択する。 - 型のクラス名を入力する (例:
java.util.Hashtable)。パッケージ名 (ある場合) を含む、完全修飾クラス名を入力する必要があります。 - 短縮名を入力する (例:
Hashtable)。短縮名を指定しない場合、マクロ・エディターは 完全修飾クラス名を短縮名として使用します。短縮名を指定すると、インポート済みタイプを参照する際に、 短縮名または完全修飾クラス名のどちらも使用できます。 - 「OK」をクリックします。
- 「変数」リスト・ボックスの最後にある 「
<new variable>」項目をクリックする。マクロ・エディターは、名前 ($a1$など)、型 (string)、初期値 (ブランク) など、デフォルトの初期値を通常どおり表示します。 - 「名前」入力フィールドに、任意の名前 (例:
$ht$) を入力する。 - 「型」リスト・ボックスで、インポート型を選択する。例えば、
Hashtable(型をインポートしたときに短縮名を指定した場合)、またはjava.util.Hashtable(完全修飾クラス名と同じ、デフォルトの短縮名を受け入れた場合) を選択します。 - 「初期値」フィールドでは、フィールドをブランクのままにする (初期値は
nullになる) か、クラスのインスタンスを戻すメソッドを指定できます。例えば、$new Hashtable()$(短縮名を使用)、または$new java.util.Hashtable()$(完全修飾クラス名を使用) を指定します。
「インポート」ポップアップ・ウィンドウに戻ると、 「インポート型」リスト・ボックスを使用して型を新規に作成でき、既に作成済みの型を編集または削除することもできます。型を新規に作成するには、リストの最後にある 「<new
imported type>」 をクリックします。型を編集するには、「インポート型 (Imported Types)」リスト・ボックス からタイプを選択し、「クラス (Class)」と「短縮名 (Short Name)」の 入力フィールドで値を変更します。タイプを除去するには、タイプを選択して「除去」をクリックします。
短縮名を指定する際には、特定の制限のもとで任意の名前を使用でき ます (変数名とタイプ名を参照)。
コード・エディターでは、<type> エレメントを使用してインポート型を作成します。マクロ・スクリプト内のインポート済みタイプすべてを含む収容エレメント <import> があり、それぞれのインポート済みタイプごとに <type> エレメントがあります。インポート済みタイプとそのタイプの変数 は、インポート済みタイプを宣言する <import> エレメントと、それに続く、インポート済みタイプに属する変数を作成および初期化する <vars> エレメントを示しています。 図 1. インポート済みタイプとそのタイプの変数
上の図で、<import> エレメントには <type> エレメントが 1 つ含まれ、このエレメントには class 属性 (完全修飾クラス名
<import>
<type class="java.util.Hashtable" name="Hashtable" />
</import>
<vars>
<create name=$ht$ type="Hashtable" value="$new Hashtable(40)$" />
</vars>java.util.Hashtable を指定) と name 属性 (短縮名 Hashtableを指定) があります。<vars> エレメントには <create> エレメントが 1 つ含まれ、このエレメントは名前 ($ht$)、型 (Hashtable)、および初期値 (ここでは null ではなく、クラスのインスタンスを戻すコンストラクター $new Hashtable(40)$ の呼び出し) を通常どおり指定します。コード・エディターを使用している場合は、インポート型 (<type> エレメント) をすべて <import> エレメント内に入れる必要があります。<import> エレメント自体は、<HAScript> エレメントの内部 (<HAScript> エレメントを参照)、かつ <vars> エレメントの前に置く必要があります。