JavaScript の使い方 こ の機能は、 Release10.5 以降で利用可能です。 こ のマ ニ ュ アルでは、 JavaScript ベースの コ ン ト ロ ールを作成 し て NXJ フ ォ ームに 追加する方法を説明 し ます。 JavaScript ベースの コ ン ト ロ ール と は、 実行時のユー ザ イ ン タ フ ェ ースが JavaScript で記述 さ れてい る コ ン ト ロ ールです。 JavaScript ベースの コ ン ト ロ ールには以下の 2 つの カ テ ゴ リ があ り ます。 • フ ォ ームの部品 と し て作成 さ れる コ ン ト ロ ール • 再利用可能な ス タ ン ド ア ロ ー ン コ ン ト ロ ール こ のマ ニ ュ アルでは、 それぞれの タ イ プの JavaScript ベースの コ ン ト ロ ールを作成 する作業について説明 し ます。 フ ォ ームのパーツ と し て作成する JavaScript コ ン ト ロール こ のセ ク シ ョ ン では、 JavaScript を使 っ て NXJ フ ォ ームにデジ タ ル時計を追加する 例を示 し ます。 埋込み型 JavaScript コ ン ト ロ ールを作成する には、 以下の タ ス ク を 実行 し ます。 • タ ス ク 1: JavaScript ソ ース フ ァ イルの作成 • タ ス ク 2: JavaScript を フ ォ ームに配置す る • タ ス ク 3: JavaScript に関連する プ ロパテ ィ を設定 • タ ス ク 4: ア プ リ ケーシ ョ ンの実行 1 タ ス ク 1: JavaScript ソ ース フ ァ イルの作成 最初に、 時計の関数宣言を含む JavaScript ソ ース フ ァ イルを作成 し ます。 NXJ ア プ リ ケーシ ョ ン デザ イ ナで、 Static Content フ ォ ルダ を右 ク リ ッ ク し て、 新規作成 > JavaScript を選択 し ます。 こ れは自動的に新 し い .js フ ァ イルを作成 し 、 開かれる ので その フ ァ イルを使 っ て編集 し ます。 下の コ ー ド を コ ピ ー し て、 新 し い フ ァ イルに貼 り 付けます。 // Writes the current time in the clock <div> function setClock() { var time = new Date(); var hours = time.getHours(); var minutes = time.getMinutes(); minutes=((minutes < 10) ? "0" : "") + minutes; var seconds = time.getSeconds(); seconds=((seconds < 10) ? "0" : "") + seconds; document.getElementById('clock').innerHTML = hours + ":" + minutes + ":" + seconds; //set a timer to change the clock every second timer = setTimeout("setClock()",1000); } // Renders the clock <div> to the HTML document function drawClock() { document.write("<div id='clock'></div>"); setClock(); } こ れを保存 し て ‘clock’ に名前を変更 し ます。 .js 拡張子は、 NXJ ア プ リ ケーシ ョ ン デザ イ ナに よ っ て追加 さ れます。 拡張子は、 表示 さ れたオ ブ ジ ェ ク ト 名には現れ ません。 タ ス ク 2: JavaScript を フ ォ ームに配置する 時計を追加 し たい フ ォ ーム を開 き ます。 最初に、 コ ン ト ロ ールパ レ ッ ト の JavaScript ボ タ ン を ク リ ッ ク し て、 次にデザ イ ンパネル の フ ォ ームを ク リ ッ ク し ます。 こ の操作で、 フ ォ ームに コ ン ト JavaScript ボ タ ン Unify NXJ JavaScript の使い方 2 ロールを配置 し 、 ‘X’ と ボ ッ ク ス を使い中央に JavaScript と 書かれた様式で表示 さ れます。 こ の コ ン ト ロ ールは、 Java ス ク リ プ ト の実行時の見え方を表現するので はな く 、 フ ォ ームにスペース を確保す るサ イ ズ を設定 し ます。 タ ス ク 3: JavaScript に関連する プ ロパテ ィ を設定 3 つの コ ン ト ロ ールプ ロパテ ィ を使 っ て JavaScript コ ン ト ロ ールを設定 し ます。 Includes、 JavaScript、 Links です。 • Includes プ ロパテ ィ JavaScript コ ン ト ロ ールの Includes プ ロパテ ィ の値の列を ク リ ッ ク し ます。 Select JavaScript Files ダ イ ア ロ グが表示 さ れるので、 フ ォ ームに呼び出 し た い JavaScript を含む フ ァ イルを指定 し ます clock.js フ ァ イルを選択 し て、 矢 印 ボ タ ン を使 っ て含むの列に移動 し ます。 OK ボ タ ン を ク リ ッ ク し て、 ダ イ ア ロ グ を閉 じ ます。 • JavaScript プ ロパテ ィ JavaScript コ ン ト ロ ールの JavaScript プ ロパテ ィ の値の列を ク リ ッ ク し ます。 こ の操作は、 実行 し たい JavaSctipt を入力す る こ と ので き る JavaScript エデ ィ タ を開 き ます。 多 く のサー ド パーテ ィ JavaScript コ ン ポーネ ン ト は、 オ ブ ジ ェ ク ト の初期化 と 適切な HTML を表現する ための メ ソ ッ ド を持 っ ていま す。 サン プルでは、 上記の drawClock() メ ソ ッ ド に よ っ て行われます。 こ れ を呼び出すには、 ポ ッ プ ア ッ プ ダ イ ア ロ グに drawClick() を入力 し ます。 次に OK ボ タ ン を ク リ ッ ク し て、 プ ロパテ ィ の設定を保存 し ます。 Unify NXJ JavaScript の使い方 3 • Links プ ロパテ ィ JavaScript コ ン ト ロ ールの Links プ ロパテ ィ の値の列を ク リ ッ ク し ます。 こ の 操作は、 Style Sheet フ ァ イルの ド ロ ッ プ ダウ ン リ ス ト を開き ます。 JavaScript コ ン ポーネ ン ト が専用のス タ イルセ ッ ト を使 っ てい る場合、 フ ォ ームに含め る ために こ こ にス タ イルセ ッ ト を追加する こ と がで き ます。 こ のサン プルは 追加の フ ァ イルを必要 と し ないため何 も 入力 し ません (定義済みス タ イルの 1 つ を使用す るか、 default.css フ ァ イルで新 し いス タ イルを定義す る こ と が で き ます。) タ ス ク 4: フ ォ ームの実行 最後に、 フ ォ ームを実行する と 、 時計が現在の時刻を示 し て フ ォ ーム上に現れま す。 ス タ ン ド ア ローン JavaScript コ ン ト ロール ス タ ン ド ア ロ ーン JavaScript コ ン ト ロ ールは、 NXJ ア プ リ ケーシ ョ ンの コ ン ポーネ ン ト と し て使用で き ます。 ス タ ン ド ア ロ ー ン JavaScript コ ン ト ロ ールには、 JavaScript フ ィ ール ド コ ン ト ロ ール と JavaScript ト リ ム コ ン ト ロ ールの 2 種類があ り ます。 • JavaScript フ ィ ール ド コ ン ト ロ ール : 値を持つ JavaScript フ ィ ール ド コ ン ト ロ ールです。 NXJ プ ロ グ ラ ミ ン グ言語の観点か ら は、 テキス ト フ ィ ール ド な どの他の フ ィ ール ド コ ン ト ロ ールに似ています。 JavaScript フ ィ ール ド コ ン ト ロ ールの例 と し ては日付取得 コ ン ト ロ ールやス ピ ナ コ ン ト ロ ールがあ り ま す。 Unify NXJ JavaScript の使い方 4 • JavaScript ト リ ム コ ン ト ロ ール : 値を持た ない JavaScript ト リ ム コ ン ト ロ ール です。 NXJ プ ロ グ ラ ミ ン グ言語の観点か ら は、 行な どの他の ト リ ム コ ン ト ロールに似ています。 JavaScript ベースの コ ン ト ロ ールは、 以下の 3 つの フ ァ イルで定義 し ます。 • JavaScript ソ ース フ ァ イル。 • オ プ シ ョ ンのグ ラ フ ィ カル JavaBean。 JavaBean は、 NXJ ア プ リ ケーシ ョ ン デ ザ イ ナで コ ン ト ロ ールを描画 し 、 JavaScript を生成 し て ク ラ イ ア ン ト 上で コ ン ト ロ ールを イ ン ス タ ン ス化す る ために使用 し ます。 • オ プ シ ョ ンの BeanInfo ク ラ ス。 BeanInfo は、 NXJ ア プ リ ケーシ ョ ン デザ イ ナ を拡張 し て コ ン ト ロ ールの カ ス タ ムプ ロパテ ィ をサポー ト する ために使用 し ます。 こ のマ ニ ュ アルでは、 JavaScript ベースの フ ィ ール ド コ ン ト ロ ールを例 と し て使用 し ます。 使用する コ ン ト ロ ールは、 ユーザが値を設定す る ために使用で き る ス ピ ナオ ブ ジ ェ ク ト です。 JavaScript ベースの コ ン ト ロ ールを作成す る には以下の作業を実行 し ます。 • タ ス ク 1: JavaScript ソ ース を記述する • タ ス ク 2: (オ プ シ ョ ン) グ ラ フ ィ カル JavaBean を作成す る • タ ス ク 3: (オ プ シ ョ ン) BeanInfo を作成する • タ ス ク 4: コ ン ポーネ ン ト を フ ォ ームや他の コ ン テ ナに配置す る • タ ス ク 5: ア プ リ ケーシ ョ ンの実行 作業内容は以下のセ ク シ ョ ン で説明 し ます。 Unify NXJ JavaScript の使い方 5 タ ス ク 1: JavaScript ソ ース を記述する JavaScript フ ァ イルには、 コ ン ト ロ ールを表すオ ブ ジ ェ ク ト の コ ン ス ト ラ ク タ があ る こ と が必要です。 通常、 コ ン ス ト ラ ク タ には多 く の引数があ り ます。 こ れ ら の 引数には前後を囲む div の名称 も あ り ます。 コ ン ス ト ラ ク タ には以下の機能があ り ます。 • 視覚的に表現 し た コ ン ト ロ ールを含める よ う に ド キ ュ メ ン ト を変更す る。 こ れは、 document.write を呼び出すか div に内部 タ グ を設定す る と 実行で き ま す。 • コ ン ト ロ ールに一連の メ ソ ッ ド を定義する。 こ れ ら の メ ソ ッ ド には getValue と setValue があ り ます。 ま た、 すべての コ ン ト ロ ール専用プ ロパテ ィ で使用 で き る ゲ ッ タ と セ ッ タ も あ り ます。 ゲ ッ タ には引数がな く 、 プ ロパテ ィ の現在の値を返 し ます。 セ ッ タ には引数 が 1 つあ り ます。 プ ロパテ ィ の値です。 値が有効であれば true を返 し 、 値が 無効であれば false を返 し ます。 コ ン ト ロ ールが フ ィ ール ド の場合、 getValue/setValue メ ソ ッ ド のペア を定義 する必要 も あ り ます。 こ れ ら の メ ソ ッ ド には コ ン ト ロ ール専用プ ロパテ ィ の ゲ ッ タ お よ びセ ッ タ と 同 じ シグニ チ ャ があ り ますが、 取得 し て設定す るのは コ ン ト ロ ールの値です。 ▼ JavaScript フ ィ ールド を 作成する ス テ ッ プ は、 以下のと おり で す。 1. NXJ ア プ リ ケーシ ョ ン デザ イ ナで フ ァ イル > プ ロ ジ ェ ク ト を開 く を選択 し 、 JavaScript コ ン ト ロ ールを含める プ ロ ジ ェ ク ト を開 き ます。 2. Classes フ ォ ルダ を右 ク リ ッ ク し て 新規作成 > JavaScript Field を選択 し 、 新 し い空の JavaScript フ ィ ール ド コ ン ト ロ ールを作成 し ます。 コ ン ト ロ ールが作成 さ れ、 デ フ ォ ル ト の名前が割 り 当て ら れます。 コ ン ト ロ ール名を変更す る には、 プ ロ ジ ェ ク ト タ ブ で名前を右 ク リ ッ ク し て名前の 変更 を選択 し ます。 Unify NXJ JavaScript の使い方 6 コ ン テ ン ト パネルのデザ イ ン タ ブ に、 図のよ う な JavaScript プ レ イ ス ホルダ コ ン ト ロ ールが表示 さ れます。 JavaScript タ ブ(ス テ ッ プ 3) 3. JavaScript タ ブ を ク リ ッ ク す る と JavaScript テ ン プ レ ー ト フ ァ イルが表示 さ れ ます。 NXJ ア プ リ ケーシ ョ ン デザ イ ナで、 コ ン ト ロ ールの JavaScript フ ァ イルのデ フ ォ ル ト のテ ン プ レ ー ト が作成 さ れます。 こ の フ ァ イルには コ ン ト ロ ール名 を名前に持つ コ ン ス ト ラ ク タ があ り 、 ア ン ダース コ アの代わ り にス ラ ッ シ ュ と バ ッ ク ス ラ ッ シ ュ が使用 さ れています。 コ ン ス ト ラ ク タ には引数が 1 つあ り ます。 div の名称です。 コ ン ト ロ ールが フ ィ ール ド の場合、 フ ァ イルに も 空の getValue メ ソ ッ ド と setValue メ ソ ッ ド が含まれます。 コ ン ス ト ラ ク タ は メ ソ ッ ド を設定 し 、 registerComponent を呼び出 し ます。 コ ン ト ロ ールが ト リ ムの場合、 コ ン ス ト ラ ク タ は registerComponent だけ を呼び出 し ます。 Unify NXJ JavaScript の使い方 7 4. 独自の コ ー ド を テ ン プ レ ー ト に追加 し ます。 例えば、 ス ピ ナ JavaScript 定義は以下のよ う にな り ます。 function Spinner(divName) { this.div = window.document.getElementById(divName); if (this.div) { this.div.getValue = Spinner.prototype.getValue; this.div.setValue = Spinner.prototype.setValue; this.div.enterValue = Spinner.prototype.enterValue; this.div.value = 0; // add other code to create the element var parentDiv; if (this.div.parentNode) parentDiv = this.div.parentNode; Unify NXJ JavaScript の使い方 8 else if (this.div.parentElement) parentDiv = this.div.parentElement; var divWidth = parentDiv.style.width.slice(0,-2); var index = document.images.length; document.write(‘<table cellpadding=”0” cellspacing=”0” border=”0”><tr><td rowspan=”2”>’); document.write(‘<input style=”float: left; width: ‘ + (divWidth - 11) + ‘px” type=”text” name=”’ + divName + ‘input” id=”’ + divName + ‘input”>’); document.write(‘</td><td>’); document.write(‘<a href=”about:blank” ‘ + ‘onclick=”document.images[‘ + index + ‘]._sp.onClickUp(); return false;” ‘ + ‘onmousedown=”document.images[‘ + index + ‘].src = ¥’../Static_Content/SpinnerUpPressed.png¥’;” ‘ + ‘onmouseup=”document.images[‘ + index + ‘].src = ¥’../Static_Content/SpinnerUpUnpressed.png¥’;” ‘ + ‘onmouseout=”document.images[‘ + index + ‘].src = ¥’../Static_Content/SpinnerUpUnpressed.png¥’;” ‘ + ‘id=”’ + divName + ‘up”>’); document.write(‘<img src=”../Static_Content/SpinnerUpUnpressed.png” ‘ + ‘style=”width: 11px; height: 11px; border: none”>’); document.write(‘</a></td></tr><tr><td>’); document.write(‘<a href=”about:blank” ‘ + ‘onclick=”document.images[‘ + (index + 1) + ‘]._sp.onClickDown(); return false;” ‘ + ‘onmousedown=”document.images[‘ + (index + 1) + ‘].src = ¥’../Static_Content/SpinnerDownPressed.png¥’;” ‘ + ‘onmouseup=”document.images[‘ + (index + 1) + ‘].src = ¥’../Static_Content/SpinnerDownUnpressed.png¥’;” ‘ + ‘onmouseout=”document.images[‘ + (index + 1) + ‘].src = ¥’../Static_Content/SpinnerDownUnpressed.png¥’;” ‘ + ‘id=”’ + divName + ‘down”>’); document.write(‘<img src=”../Static_Content/SpinnerDownUnpressed.png” ‘ + ‘style=”width: 11px; height: 11px; border: none”>’); document.write(‘</a></td></tr></table>’); document.images[index]._sp = this; document.images[index + 1]._sp = this; this.div.textField = document.all[divName + ‘input’]; } } Spinner.prototype.getValue = function() { return this.textField.value; } Spinner.prototype.setValue = function(value) { this.textField.value = value; } Spinner.prototype.enterValue = function() { // add code to get input value from the user // We are using a standard text field as the main object in our Unify NXJ JavaScript の使い方 9 // Javascript component, so this is not needed. } Spinner.prototype.onClickUp = function() { this.div.textField.value++; } Spinner.prototype.onClickDown = function() { this.div.textField.value--; } 5. フ ァ イル > 保存 を選択 し て JavaScript を保存 し ます。 フ ォ ームス ク リ プ ト お よ び Java ソ ース と は異な り 、 JavaScript 構文エ ラ ーは NXJ デザ イ ン セ ン タ に報告 さ れません。 タ ス ク 2: (オプ シ ョ ン) グ ラ フ ィ カル JavaBean を作成する JavaScript コ ン ト ロ ール上で コ ン ト ロ ール専用プ ロパテ ィ をサポー ト し た り 、 デザ イ ンパネルで コ ン ト ロ ールを描画す る方法を カ ス タ マ イ ズする場合は、 JavaBean を定義する必要があ り ます。 JavaBean は Swing コ ン ポーネ ン ト を継承する必要があ り ます。 ま た、 getInstantiationCode メ ソ ッ ド も 必要です。 こ の メ ソ ッ ド には引数がな く 、 コ ン ト ロールを イ ン ス タ ン ス化する ための JavaScrip ス ニペ ッ ト を返 し ます。 ほ と んどの 場合、 getInstantiationCode メ ソ ッ ド は こ のス ニペ ッ ト を bean のプ ロパテ ィ 値の根 拠に し ます。 タ ス ク 1 で コ ン ト ロ ールが作成 さ れた時点で、 NXJ ア プ リ ケーシ ョ ン デザ イ ナは コ ン ト ロ ールのテ ン プ レ ー ト JavaBean フ ァ イルを作成 し ま し た。 Unify NXJ JavaScript の使い方 10 コ ン ト ロ ールが別の JavaBean コ ン ト ロ ールを継承する場合、 テ ン プ レ ー ト は以下 の コ ー ド を構成 し ます。 package <package name of component>; import <name of base class's bean>; class <component name>Bean extends < base class' bean> { } JavaBean フ ァ イルを編集す る には、 NXJ ア プ リ ケーシ ョ ン デザ イ ナの コ ン テ ン ト パネルで JavaBean タ ブ を ク リ ッ ク し ます。 コ ン ト ロ ールの JavaBean が正 し く コ ン パ イル さ れる と 、 JavaBean が表示 さ れ、 コ ン ト ロ ールが描画 さ れます。 プ ロパテ ィ ビ ュ ーパネルには、 標準の コ ン ト ロ ールプ ロパテ ィ であ る Background や Font な どがあ り ます。 JavaScript コ ン ポーネ ン ト は コ ン ト ロ ール専用プ ロパテ ィ を定義で き ます。 こ れ ら のプ ロパテ ィ を使 っ て、 コ ン ポーネ ン ト の実行時の外観 と ク ラ イ ア ン ト サ イ ド の 動作を設定 し ます。 コ ン ポーネ ン ト 専用プ ロパテ ィ は、 JavaBean にゲ ッ タ と セ ッ タ を追加 し てオ プ シ ョ ン で BeanInfo に コ ー ド を追加 し て定義 し ます。 コ ン ポーネ ン ト 専用プ ロパテ ィ は設計時 と 実行時に設定で き ます。 サーバ と ク ラ イ ア ン ト の間の通信プ ロ ト コ ルには、 名前 と 値のペアの リ ス ト をや り と り す る こ と が必要です。 ク ラ イ ア ン ト サ イ ド の コ ー ド は、 コ ン ポーネ ン ト のゲ ッ タ と セ ッ タ を呼び出 し て プ ロパテ ィ の取得 と 設定を行います。 コ ンパ イ ラ では、 コ ン ポーネ ン ト 専用プ ロパテ ィ を取得 し て設定する フ ィ ール ド ス タ イル構文をサポー ト する ために、 JavaBean の内部調査、 プ ロパテ ィ 名の指定、 対応する jBiz ク ラ スの コ ー ド 生成を行 う こ と がで き ます。 コ ン ポーネ ン ト を イ ン ス タ ン ス化す る コ ー ド の構成は以下の と お り です。 <div> <script language="javascript"> snippet returned by getInstantiationCode </script> </div> div の属性には コ ン ポーネ ン ト の標準 コ ン ト ロ ールプ ロパテ ィ (Background、 Foreground、 Width、 Height な ど) が設定 さ れています。 NXJ ア プ リ ケーシ ョ ン デ ザ イ ナが イ ン ス タ ン ス化 コ ー ド を生成する場合、 getInstantiationCode で戻 さ れる ス ニペ ッ ト を実行 し て、 $DIV の各 イ ン ス タ ン ス を div の名称に置き換え ます。 Unify NXJ JavaScript の使い方 11 タ ス ク 3: (オプ シ ョ ン) BeanInfo を作成する BeanInfo は JavaBean の メ タ デー タ を提供す る Java ク ラ ス で、 Beans プ ロパテ ィ の 名前 と 各プ ロパテ ィ の カ ス タ ムエデ ィ タ です。 BeanInfo の使用は JavaBeans の仕様 で定義 さ れています。 タ ス ク 1 で JavaScript コ ン ト ロ ールを作成 し た と き、 NXJ ア プ リ ケーシ ョ ン デザ イ ナは以下のよ う なデ フ ォ ル ト の BeanInfo を作成 し ま し た。 • JavaScript コ ン ト ロ ールが別の JavaScript コ ン ト ロ ールを継承 し 、 ベース コ ン ト ロ ールに BeanInfo があ る場合、 NXJ ア プ リ ケーシ ョ ン デザ イ ナはそのベー ス コ ン ト ロ ールの BeanInfo を継承す る BeanInfo を作成 し ます。 • それ以外の場合、 BeanInfo には何 も 含まれません。 こ れは、 NXJ ア プ リ ケー シ ョ ン デザ イ ナは コ ン ト ロ ールの BeanInfo ク ラ ス を コ ンパ イルせず、 BeanInfo ク ラ スがない bean の Java 規則に基づいて bean のプ ロパテ ィ と 配置 済みエデ ィ タ を指定する必要があ る こ と を示 し ています。 パレ ッ ト に JavaScript ベースの コ ン ト ロ ールを配置する と 、 NXJ ア プ リ ケーシ ョ ン デザ イ ナは BeanInfo を使 っ て コ ン ト ロ ールの カ ス タ ムア イ コ ン を検索 し ます。 BeanInfo がア イ コ ンの相対パス を返せば、 Static Content に対 し て相対的であ る と 見な さ れます。 NXJ ア プ リ ケーシ ョ ン デザ イ ナには以下の 3 つの Swing ク ラ スがあ り 、 カ ス タ ム エデ ィ タ と し て使用で き ます。 • テキス ト フ ィ ール ド 用、 … ボ タ ン あ り • NXJ ア プ リ ケーシ ョ ン デザ イ ナの色選択用 • NXJ ア プ リ ケーシ ョ ン デザ イ ナの タ グエデ ィ タ 用 タ ス ク 4: コ ンポーネ ン ト を フ ォ ームや他のコ ン テナに配置する フ ォ ームや他の コ ン テ ナに JavaScript コ ン ポーネ ン ト を配置す る ス テ ッ プは、 以下 の と お り です。 1. NXJ ア プ リ ケーシ ョ ン デザ イ ナで、 JavaScript コ ン ポーネ ン ト を配置す る コ ン テ ナ を開き ます。 2. コ ン ポーネ ン ト の挿入場所にあ る コ ン テ ナ を右 ク リ ッ ク し て、 コ ン ポーネ ン ト の挿入 を選択 し ます。 Unify NXJ JavaScript の使い方 12 3. コ ン ポーネ ン ト の選択ダ イ ア ロ グで、 挿入す る JavaScript ベースの コ ン テ ナ を ク リ ッ ク し ます。 4. コ ン ポーネ ン ト を設定 し ます。 JavaBean コ ン ポーネ ン ト の イ ン ス タ ン ス を編集す る場合は、 以下のガ イ ド ラ イ ン に従 っ て く だ さ い。 コ ン ポーネ ン ト の JavaBean が正 し く コ ンパ イル さ れる と 、 JavaBean が表示 さ れ、 コ ン ト ロ ールが描画 さ れます。 それ以外の場合、 コ ン ポーネ ン ト はプ レ イ ス フ ォ ルダボ ッ ク ス と し て描画 さ れます。 選択 し た JavaScript ベースの コ ン ト ロ ールのプ ロパテ ィ タ ブ には、 標準の コ ン ト ロ ールプ ロパテ ィ (Background や Font な ど) があ り 、 さ ら に Component Properties グループ に以下の コ ン ポーネ ン ト 専用プ ロパテ ィ があ り ます。 • コ ン ポーネ ン ト に BeanInfo 定義があ り 、 BeanInfo の コ ンパ イルが成功 し てい る場合、 NXJ ア プ リ ケーシ ョ ン デザ イ ナは BeanInfo を使 っ て プ ロパ テ ィ の一覧を指定 し ます。 • それ以外の場合は、 JavaBean の コ ンパ イル完了後 NXJ ア プ リ ケーシ ョ ン デザ イ ナは bean のゲ ッ タ と セ ッ タ を使 っ て プ ロパテ ィ の一覧を指定 し ま す。 • それ以外の場合、 bean は bean 専用プ ロパテ ィ がない も の と みな し ます。 Unify NXJ JavaScript の使い方 13 • コ ン ポーネ ン ト が JavaScript ベースの フ ィ ール ド コ ン ト ロ ールであれば、 NXJ ア プ リ ケーシ ョ ン デザ イ ナは Target Field な ど標準 フ ィ ール ド プ ロパ テ ィ も 表示 し ます。 コ ン ポーネ ン ト 専用プ ロパテ ィ に値を セ ッ ト する には、 プ ロパテ ィ の値の列 を ク リ ッ ク し ます。 BeanInfo がプ ロパテ ィ の カ ス タ ムエデ ィ タ を定義 し てい れば、 NXJ ア プ リ ケーシ ョ ン デザ イ ナはその カ ス タ ムエデ ィ タ を配置済みエ デ ィ タ と し て使用 し ます。 それ以外の場合、 bean に カ ス タ マ イザがあれば、 NXJ ア プ リ ケーシ ョ ン デザ イ ナはその カ ス タ マ イザを表示 し ます。 タ ス ク 5: ア プ リ ケーシ ョ ンの実行 通常の方法で ア プ リ ケーシ ョ ン を実行ま たは配備 し ます。 Unify NXJ JavaScript の使い方 14
© Copyright 2024 Paperzz