コンテナ部品は、複数の画面部品を配置することができる部品です。
ここでは、コンテナ部品の設定内容、および設定方法について説明します。
ViewContainerは、画面情報(コンテナ)を指定する部品です。
ViewContainerは、子要素にHTML要素を持つことができ、HTML要素をまとめて部品として扱うことができます。ViewStackまたはTabPanelで、切り替える画面の単位を指定するために使用します。
記述形式
<div rcf:type="ViewContainer" ... >
    HTML要素
</div>ポイント
子要素には、HTML要素およびUI部品を指定できます。
プロパティ
表の項目の意味は、“Text”の“プロパティ”を参照してください。
名前  | データ型  | 説明  | 省略  | 省略値  | 
|---|---|---|---|---|
label  | String  | タブパネル子要素として利用する場合のタブ名を指定します。  | 可  | ""  | 
部品共通のプロパティも指定できます。詳細は、“4.2.4 画面部品共通プロパティ”を参照してください。
スタイルプロパティ
パーツ名  | プレフィックス  | クラス名  | 使用可能なスタイル  | 
|---|---|---|---|
部品全体  | なし  | rcf-ViewContainer  | 
  | 
詳細は、“4.2.5 スタイルプロパティ”を参照してください。
補足事項
Panelは、タイトル部とボディ部でできている画面情報(コンテナ)を指定する部品です。
表示例

記述形式
<div rcf:type="IBPMPanel" ... >
    HTML要素
</div>ポイント
子要素には、HTML要素およびUI部品を指定できます。子要素に定義されたHTML要素は、ボディ部の内容になります。
プロパティ
表の項目の意味は、“Text”の“プロパティ”を参照してください。
名前  | データ型  | 説明  | 省略  | 省略値  | 
|---|---|---|---|---|
label  | String  | タイトル部のラベルテキストを指定します。 idプロパティにUDAを指定した場合、初期化時にUDAの値が設定されます。  | 可  | ""  | 
部品共通のプロパティも指定できます。詳細は、“4.2.4 画面部品共通プロパティ”を参照してください。
スタイルプロパティ
パーツ名  | プレフィックス  | クラス名  | 使用可能なスタイル  | 
|---|---|---|---|
部品全体  | なし  | rcf-Panel  | 
  | 
タイトル部  | title  | rcf-Panel-title  | 
  | 
ボディ部  | body  | rcf-Panel-body  | 
  | 
注) widthのデフォルトは300pxです。
詳細は、“4.2.5 スタイルプロパティ”を参照してください。
補足事項
Panelのサイズ
Panelのサイズについては、以下の注意事項があります。
幅(width)と高さ(height)は、スタイルプロパティで指定してください。CSSで指定した場合、表示が崩れる可能性があります。
幅(width)と高さ(height)を設定する際の単位は、“px”にだけ対応しています。そのほかの単位による指定およびパーセント値(%)による指定をした場合、表示が崩れる可能性があります。
ボディ部に100px×100pxの要素を配置できるサイズがPanelの最小サイズとなります。これより小さいサイズに変更しようとした場合、最小サイズに設定されます。
ViewStackは、切替え対象の画面情報(コンテナ)をグループ化する部品です。画面の同じ位置で表示を切り替える場合に利用します。
コンテナには、ViewContainerまたはFragmentContainerを利用できます。各画面の情報(HTMLコンテンツ)は、コンテナの子要素として記述します。
図4.6 動作イメージ

記述形式
<div rcf:type="IBPMViewStack" ... >
  <div rcf:type="ViewContainer">
    HTML要素
  </div>
  <div rcf:type="IBPMFragmentContainer" rcf:src="about:blank">
  </div>
  ...
</div>ポイント
子要素は、1個以上記述してください。
子要素には、ViewContainerまたはFragmentContainerを記述します。
子要素にViewContainerおよびFragmentContainer以外のものを記述しても、表示することはできません。
プロパティ
表の項目の意味は、“Text”の“プロパティ”を参照してください。
名前  | データ型  | 説明  | 省略  | 省略値  | 
|---|---|---|---|---|
selectedIndex  | Number  | 選択されている画面のインデックスを指定します。 idプロパティにUDAを指定した場合、初期化時にUDAの値が設定されます。  | 可  | 0  | 
selectedIndexLock  | -  | Systemwalker Runbook Automation Studioでは、指定できません。  | -  | -  | 
部品共通のプロパティも指定できます。詳細は、“4.2.4 画面部品共通プロパティ”を参照してください。
スタイルプロパティ
パーツ名  | プレフィックス  | クラス名  | 使用可能なスタイル  | 
|---|---|---|---|
部品全体  | なし  | rcf-ViewStack  | 
  | 
詳細は、“4.2.5 スタイルプロパティ”を参照してください。
補足事項
ViewStack部品の内部に表示する内容(タイトル部含む)のサイズが、部品全体のサイズを超える場合、部品の描画が崩れる可能性があります。
表示する内容が収まるように、部品全体のサイズを設定してください。
TabPanelは、タブによる切替え対象の画面情報(コンテナ)をグループ化する部品です。タブで画面の表示を切り替える場合に利用します。
タブやタブ内のフォーム部品にフォーカスがある場合、キー操作でタブを切り替えることができます。また、タブ切替えキーをカスタマイズすることもできます。
表示例

記述形式
<div rcf:type="IBPMTabPanel" ... >
  <div rcf:type="ViewContainer" rcf:label="タブ1">
    HTML要素
  </div>
  <div rcf:type="IBPMFragmentContainer" rcf:label="タブ2">
  </div>
  ...
</div>ポイント
子要素は1個以上記述してください。
子要素には、切り替える画面単位にコンテナ要素を記述します。コンテナ要素として、ViewContainerとFragmentContainerが利用できます。
子要素にViewContainerおよびFragmentContainer以外のものを記述しても、表示することはできません。
プロパティ
表の項目の意味は、“Text”の“プロパティ”を参照してください。
名前  | データ型  | 説明  | 省略  | 省略値  | 
|---|---|---|---|---|
selectedIndex  | Number  | 選択されている画面のインデックスを指定します。  | 可  | 0  | 
String  | タブ表示位置を指定します。  | 可  | TOP_LEFT  | |
nextKey  | String  | 次のタブに切り替えるキーを指定します。  | 可  | Ctrl+→カーソルキー  | 
previousKey  | String  | 前のタブに切り替えるキーを指定します。  | 可  | Ctrl+←カーソルキー  | 
tabSeparator  | Boolean  | タブの間に隙間をあけるかどうかを指定します。 
  | 可  | true  | 
tabRenderer  | -  | Systemwalker Runbook Automation Studioでは、指定できません。  | -  | -  | 
tabIndex  | Number  | TABキーで移動するフォーカスの順番を指定します。  | 可  | 0  | 
selectedIndexLock  | Boolean  | 画面切替えを抑止するかどうかを指定します。 
  | 可  | false  | 
ViewContainerのプロパティも指定できます。ここで説明を省略しているプロパティの詳細は、“4.2.2.1 ViewContainer”の“プロパティ”を参照してください。
部品共通のプロパティも指定できます。詳細は、“4.2.4 画面部品共通プロパティ”を参照してください。
tabPositionプロパティで、1番目タブの表示位置と2番目以降のタブの追加方向を指定できます。
大文字/小文字を区別しません。
青色の破線矢印は、2番目以降のタブの追加方向を示します。
タブ内のラベル文字は、タブ表示位置にかかわらず、左から右になります。

nextKeyプロパティ、previousKeyプロパティでは、選択するタブを切り替えるキーを指定します。
キーには、“+”を区切り文字として、以下を指定できます。
数字または別名:キーコード
ALT:Altキー
CTRL:Ctrlキー
SHIFT:Shiftキー
キーコードは必須で、最初に指定する必要があります。
指定例を以下に示します。
指定例  | 内容  | 
|---|---|
13  | Enterキー  | 
13 + SHIFT  | Enterキー + Shiftキー  | 
13 + CTRL + SHIFT  | Enterキー + Ctrlキー + Shiftキー  | 
SHIFT  | キーコードが指定されていないので、設定不可  | 
CTRL+13  | キーコードが最初に指定されていないので、設定不可  | 
キーコードには、数字の直接指定のほか、以下の別名を指定することができます。
別名による指定は、その別名が表すキーの実際のキーコードを指定した場合と同様に動作します。
例えば、“ENTER+SHIFT”は、“13+SHIFT”と同じ値として扱います。
別名  | 対象となるキー  | 実際のキーコード  | 
|---|---|---|
BACKSPACE  | Backspaceキー  | 8  | 
TAB  | Tabキー  | 9  | 
ENTER  | Enterキー  | 13  | 
ESC  | Escキー  | 27  | 
SPACE  | スペースキー  | 32  | 
PAGEUP  | PageUpキー  | 33  | 
PAGEDOWN  | PageDownキー  | 34  | 
END  | Endキー  | 35  | 
HOME  | Homeキー  | 36  | 
LEFT  | ←(左カーソルキー)  | 37  | 
UP  | ↑(上カーソルキー)  | 38  | 
RIGHT  | →(右カーソルキー)  | 39  | 
DOWN  | ↓(下カーソルキー)  | 40  | 
INSERT  | Insertキー  | 45  | 
DELETE  | Deleteキー  | 46  | 
F1  | F1キー  | 112  | 
F2  | F2キー  | 113  | 
F3  | F3キー  | 114  | 
F4  | F4キー  | 115  | 
F5  | F5キー  | 116  | 
F6  | F6キー  | 117  | 
F7  | F7キー  | 118  | 
F8  | F8キー  | 119  | 
F9  | F9キー  | 120  | 
F10  | F10キー  | 121  | 
F11  | F11キー  | 122  | 
F12  | F12キー  | 123  | 
スタイルプロパティ
TabPanelの幅と高さは、heightプロパティおよびwidthプロパティで指定します。各プロパティは、タブの高さ(幅)を含みます。
デフォルトでは、widthが100%、heightがautoとなっています。
heightがautoの場合、タブパネルの高さは、パネルに表示されるViewContainerまたはFragmentContainerの高さにあわせて変動します。

タブの位置にかかわらず、headerWidthプロパティおよびheaderHeightプロパティの省略値はautoです。

タブを左右に配置する場合、タブの幅はタブに表示する最長の文字列に依存します。
タブを上下に配置する場合、タブの幅は表示する文字列に依存して個々に異なります。
以下の図に示します。

部品名  | プレフィックス  | クラス名  | スタイル分類  | 説明  | 
|---|---|---|---|---|
全体  | なし  | rcf-TabPanel  | 
  | 部品全体のサイズ  | 
ヘッダ  | header  | rcf-TabPanel-header  | 
  | タブ部分のサイズ  | 
ボディ  | body  | rcf-TabPanel-body  | 
  | ボディ部分  | 
タブ  | tab  | rcf-TabPanel-tab  | 
  | 個々のタブのスタイル  | 
選択状態タブ  | tabSelected  | rcf-TabPanel-tabSelected  | 
  | 選択されているタブのスタイル  | 
マウスオーバータブ  | tabHovered  | rcf-TabPanel-tabHovered  | 
  | マウス位置にあるタブのスタイル  | 
セパレータ  | tabSeparator  | rcf-TabPanel-tabSeparator  | 
  | タブ間の幅を指定  | 
ブランク  | tabBlank  | rcf-TabPanel-tabBlank  | 
  | タブのある辺のタブ部分以外のスタイル  | 
詳細は、“4.2.5 スタイルプロパティ”を参照してください。
選択タブとマウスオーバータブが重なった場合は、タブのスタイルクラスに、tabSelected、tabHoveredの順に宣言します。
tab、tabSelected、tabHovered、tabSeparator、tabBlankは、CSSでだけ指定できます。
ボディとタブのデフォルトのスタイル設定は、タブの位置に依存して、上下左右で異なるため、カスタマイズの際は注意が必要です。デフォルトのスタイル設定は、以下のとおりです。
ボディ
タブのある辺: border-style: none
タブのない3辺: border-style: solid
タブ
4辺とも border-color: #000
ただし、タブが選択状態でかつマウスがタブ上にない場合は、ボディに接する辺のボーダーの色がタブのbackground-colorに合わせられます。
カスタマイズで背景色を変えた場合も同様です。
補足事項
TabPanelのサイズについて
スタイルのカスタマイズにおいて、サイズの単位は“px”にだけ対応しています。ボーダーの幅やマージン、パディングに関しても同様です。そのほかの単位による指定をした場合、表示が崩れる可能性があります。
TabPanel部品の内部に表示する内容(タイトル部含む)のサイズが、部品全体のサイズを超える場合、部品の描画が崩れる可能性があります。
表示する内容が収まるように、部品全体のサイズを設定してください。
フォーカスについて
TABキーでTabPanelにフォーカスを移動させた場合は、ヘッダ部分にフォーカスが当たった状態になります。また、nextKeyおよびpreviousKeyで指定したキーでタブを切り替えたあとも、ヘッダ部分にフォーカスが当たります。
ヘッダ部分へのフォーカスは、個々のタブ単位ではなく、ヘッダ部分全体に対してフォーカスが当たった状態になります。
ボディ内に記述されている部品にフォーカスが当たっている場合、nextKeyおよびpreviousKeyによるタブ切替えは可能ですが、TABキーでのフォーカス移動は、TabPanelではなく、フォーカスが直接当たっている部品が対象になります。
タブ切替えキー(nextKey、previousKey)の設定について
グローバルイベント制御を行っているキーがタブ切替えキーに指定された場合、予期しない動作をする場合があります。タブ切替えキーには、それらと干渉しないキーを設定してください。
ブラウザのショートカットキーなどと一致するキーがタブ切替えキーに指定された場合、タブ切替え処理が優先され、元々の処理がキャンセルされる場合があります。タブ切替えキーには、有効にしたいショートカットなどと干渉しないキーを設定してください。
例)
“66+CTRL(Ctrl + B)”をタブ切替えキーに指定した場合、機能付加対象の部品でCtrl + Bを入力しても、以下のブラウザの標準動作が行われなくなります。
お気に入りの整理
ブックマークの表示
数字や文字をタブ切替えキーに割り当てる場合は、CTRLまたはALTと組み合わせて、指定してください。数字や文字のキーを単独でタブ切替えキーに割り当てた場合、IMEが有効になっているとキーコードを判別できないため、タブの切替えが正常に行われません。
FragmentContainerは、画面情報(コンテナ)を別ファイルで指定する部品です。
ViewContainerは子要素として同一ファイル内にHTML要素を記述するのに対して、FragmentContainerは別ファイルに記述します。
FragmentContainer内のHTML(以降、フラグメントHTMLと呼びます)は、非同期通信によるデータの取得処理が開始されます。なお、フラグメントHTMLは、単体のHTMLとしてDTDに適合していません。
取得後のフラグメントHTMLは、FragmentContainerを記述したHTML(以降、コンテナHTMLと呼びます)に挿入されて、データが反映されます。
用途の例を以下に示します。
初期化処理の高速化
TabPanelやViewStackと組み合わせて、コンテナの内容を遅延読込みさせます。
分散開発
開発資産(ファイル)が分割されるので、分散して開発できます。
記述形式
<div rcf:type="IBPMFragmentContainer" rcf:src="about:blank" ... ></div>
注意
子要素は指定できません。詳細は、“4.4.1.4 子要素を持たない部品に子要素を記述した場合の動作”を参照してください。
図4.7 FragmentContainerの利用イメージ

フラグメントHTMLは、通常のHTMLと同様に、UI部品を利用できます。
プロパティ
表の項目の意味は、“Text”の“プロパティ”を参照してください。
名前  | データ型  | 説明  | 省略  | 省略値  | 
|---|---|---|---|---|
src  | String  | Systemwalker Runbook Automation Studioでは、変更できません。必ず、"about:blank"を指定します。  | 不可  | -  | 
showStatus  | Boolean  | activate前のFragmentContainerの状態(初期化直後、ロード中、エラーなど)の表示/非表示を指定します。 
  | 可  | true  | 
statusIconImage  | -  | Systemwalker Runbook Automation Studioでは、指定できません。  | -  | -  | 
timeout  | Number  | フラグメントHTMLの取得開始から取得完了までの最大待ち時間を指定します。単位は、ミリ秒です。  | 可  | 60000(60秒)  | 
ViewContainerのプロパティも指定できます。ここで説明を省略しているプロパティの詳細は、“4.2.2.1 ViewContainer”の“プロパティ”を参照してください。
部品共通のプロパティも指定できます。詳細は、“4.2.4 画面部品共通プロパティ”を参照してください。
スタイルプロパティ
パーツ名  | プレフィックス  | クラス名  | 使用可能なスタイル  | 
|---|---|---|---|
部品全体  | なし  | rcf-FragmentContainer  | 
  | 
詳細は、“4.2.5 スタイルプロパティ”を参照してください。
補足事項
FragmentContainerを単体で使用した場合、activate完了後は、通常の<div>タグと同様に表示されます。
フラグメントHTMLは、HTMLのボディに追加されます。そのため、HTMLのヘッダに記述する要素を、フラグメントHTMLに記述することはできません。
FragmentContainerに割り当てられたUDAの値は、実行時にエンコードされ、srcプロパティに設定されます。
QuickFormの開発時には、rcf:srcの値("about:blank")を変更しないでください。rcf:srcの値を変更した場合、以下のいずれかのメッセージが表示されます。
オブジェクトを指定してください。
'excArrayObj'は宣言されていません。
注意
FragmentContainerには、AdvancedカテゴリのUI部品のみ追加することができます。BasicカテゴリのUI部品は追加できません。
フラグメントHTMLを使用する場合、以下の操作を行う必要があります。
[新規 QuickForm]ウィザードダイアログで、フラグメントHTML(*.jsp)を作成します。
Ajaxページエディタが表示されます。
Ajaxページエディタのソースビューで、以下の行以外を削除します。
<script type="text/javascript" src="../rcf_config.js" charset="UTF-8"></script> <script type="text/javascript" src="../acf/file/rcf/rcf.js" charset="UTF-8"></script> <body> </body>
編集後のファイル(jsp)の内容は以下のようになります。
<script type="text/javascript" src="../rcf_config.js" charset="UTF-8"></script> <script type="text/javascript" src="../acf/file/rcf/rcf.js" charset="UTF-8"></script> <body> </body>
UI部品をAjaxページエディタで貼り付けます。
UI部品を貼り付けたあとのファイル(jsp)の内容は以下のようになります。
<script type="text/javascript" src="../rcf_config.js" charset="UTF-8"></script>
<script type="text/javascript" src="../acf/file/rcf/rcf.js" charset="UTF-8"></script>
<body>
<div rcf:id="uda_1883781543" rcf:type="IBPMText" rcf:value="Text" style="left: 33px; top: 29px; position: absolute"></div>
<div style="position: absolute; width: 188px; height: 78px; left: 68px; top: 17px">
    <div rcf:id="uda_1515456276" rcf:type="IBPMTextInput" rcf:width="155px" rcf:height="20px" style="left: 12px; top: 12px; position: absolute"></div>
    <div rcf:id="error_1515456276" rcf:type="IBPMText" rcf:value="                                        " rcf:color="#FF0000" rcf:width="155px" rcf:height="20px" style="left: 14px; top: 46px; position: absolute"></div>
</div>
</body>画面イメージは以下です。

追加したUI部品以外の箇所を削除します。この状態でアプリケーションのアップロードまたはエクスポートを実行します。編集後のファイル(jsp)の内容は以下のようになります。
<div rcf:id="uda_1883781543" rcf:type="IBPMText" rcf:value="Text" style="left: 33px; top: 29px; position: absolute"></div>
<div style="position: absolute; width: 188px; height: 78px; left: 68px; top: 17px">
    <div rcf:id="uda_1515456276" rcf:type="IBPMTextInput" rcf:width="155px" rcf:height="20px" style="left: 12px; top: 12px; position: absolute"></div>
    <div rcf:id="error_1515456276" rcf:type="IBPMText" rcf:value="                                        " rcf:color="#FF0000" rcf:width="155px" rcf:height="20px" style="left: 14px; top: 46px; position: absolute"></div>
</div>フラグメントHTMLを再度編集する場合は、操作4で削除した箇所(下線部分)を元に戻します。
<script type="text/javascript" src="../rcf_config.js" charset="UTF-8"></script>
<script type="text/javascript" src="../acf/file/rcf/rcf.js" charset="UTF-8"></script>
<body>
<div rcf:id="uda_1883781543" rcf:type="IBPMText" rcf:value="Text" style="left: 33px; top: 29px; position: absolute"></div> <div style="position: absolute; width: 188px; height: 78px; left: 68px; top: 17px"> <div rcf:id="uda_1515456276" rcf:type="IBPMTextInput" rcf:width="155px" rcf:height="20px" style="left: 12px; top: 12px; position: absolute"></div> <div rcf:id="error_1515456276" rcf:type="IBPMText" rcf:value=" " rcf:color="#FF0000" rcf:width="155px" rcf:height="20px" style="left: 14px; top: 46px; position: absolute"></div> </div> </body>