手順4)フェースプレート部品への項目追加

<< Click to Display Table of Contents >>

トレーニング(PA-Panel) > DCSサンプルのカスタマイズ > 新規に構造化タグクラスを追加する >

手順4)フェースプレート部品への項目追加

フェースプレート部品の作成

新しく追加した2PIDクラス用のフェースプレート部品を整備します。今回追加した2PIDクラスはPIDクラスとメンバ構成が酷似しているため、PIDクラス用の既存のフェースプレート部品をコピーして流用し、2PIDクラス用の部品として作成します。

 

1.Panel EditorからPA-Framework.xmlを選択し、「FP_MELSEC_QnPH_PID」フォームをコピーし、「FP_MELSEC_QnPH_2PID」を作成してください。

 

2.「FP_MELSEC_QnPH_2PID」フォームを開き、フェースプレート部品の以下のプロパティを変更してください。

 

pap_0331

 

プロパティ名

設定

TuningDlgName

CORE_TuningDlg_2PID

 

フェースプレート部品側の変更は上表のみです。

クラス構造が同等のため、そのまま使用することができます。

 

 

 

 

関連個所の改造(呼び出し部分など)

 

■COREロジックの修正

 

1.Panel EditorからPA-Framework.xmlを選択し、「CORE」フォームを表示してください。

 

2.COREフォーム上に配置されている「FacePlate」を選択した状態でスクリプトエディタを開きます。

 

pap_0332

 

3.フェースプレートの画面情報を取得している関数「gSelectFacePlateForm」に、新たに追加したクラスの処理を記述します。

 

case "MELSEC.QnPH.PID":

 ・・・

 

case "MELSEC.QnPH.2PID":

 vBaseName = "FP_MELSEC_QnPH_2PID";

 vFormName = vBaseName & "_frm_" & vTargetPoint & "_" & ::CStr(vTargetObj);

 break;

 

 

 

■シンボルダイアログの修正

 

1.Panel EditorからPA-Framework.xmlを選択し、「CORE_SymbolDlg_PID」フォームをコピーし、「CORE_SymbolDlg_2PID」を作成してください。

 

2.フォームに配置されている「チューニング」ボタンを選択した状態で、スクリプトエディタを開きます。

 

pap_0333

 

 

3.スクリプトに記述されているチューニングダイアログのフォーム名(vFormId)を、以下のように変更します。

 

var vFormId = "CORE_TuningDlg_2PID";

 

 

■チューニングダイアログの修正

 

1.Panel EditorからPA-Framework.xmlを選択し、「CORE_TuningDlg_PID」フォームをコピーし、「CORE_TuningDlg_2PID」を作成してください。

 

 

2.フォームが選択された状態でスクリプトエディタを開き、以下のように変更します。

 

if( vDispId == fcDISP_INIT ){

 if( fvClassIdValue == "MELSEC.QnPH.2PID" ){

         edtP.Text = fChangeP(fvValues[fcMEM_P]);

         ・・・

}

 

3.フォーム上の「書込」ボタンを選択した状態でスクリプトエディタを開き、以下のように変更します。

 

pap_0334

 

var vValue;

if(value  == "MELSEC.QnPH.2PID" ) {

 vValue = parent.fChangeP(::CNum(text));

} else {        

 vValue = ::CNum(text);

}

return vValue;