全体画面構成のためのDivと、上段メニュー、左側メニューを作ります。 (サンプルのデザインは、使うテーマによって異なることもあります。)
実習目的
実装機能
次の段階に従って画面を構成して、コンポーネントを生成してデータセット(Dataset)とバインドします。
画面構成(1) : 全体の画面構成とメニュー構成
画面構成(2) : Menu,Div 実装
画面構成(1) : 全体画面の構成とメニュー構成
全体画面構成のためのDivを作って、上端メニューの機能を確認します。
全体画面作り
画面(Form) 作成
"プロジェクトの生成"を参照して、Formを作ります。 “Create New Form Wizard”に使ったオプションは、次の通りです.
属性 | 説明 |
|---|---|
Name | menu |
Location | Base |
Width | 1024 |
Height | 768 |
Formの titletextプロパティ値を “顧客照会”に指定します。
左側メニューと画面領域の2つディビジョン(Div)を [図] のように配置して、属性を変更します。
ディビジョン(Div) | ||
|---|---|---|
属性 | 値 | 説明 |
id | divLeft | |
ディビジョン(Div) | ||
|---|---|---|
属性 | 値 | 説明 |
id | divMain | |
メニュー(Menu) | ||
|---|---|---|
属性 | 値 | 説明 |
id | mnuTop | |
メニュー構成
顧客管理システムを実行すれば、上端に全体メニューと左側にフォームメニュ-が表示されます。上端メニューと左側にあるフォームメニュ-は、登録、照会画面の呼び出し機能を持っています。
画面構成(2) : Menu 実装
上端メニュー作り -
メニュー : Menu
メニュー(Menu)は、階層的Menuを構成することができます。 メニュー(Menu)の各itemはEnabel/Disableを指定することができ、Check状態の表現も可能です。コンポーネントツールバーから を選択し、div_top 上に作ってバインドするデータセット(Dataset) dsMenuを追加します。dsMenu カラムの内容は、次の通りです。
データセット(Dataset) – dsMenu | |||
|---|---|---|---|
id | caption | level | url |
form | 画面 | 0 | |
list | 顧客リスト照会 | 1 | Base::list.xfdl |
entry | 顧客詳細照会 | 1 | Base::entry.xfdl |
split | | | 0 | |
help | ヘルプ | 0 | |
メニューとデータセットをバインドすれば、メニュー属性の指定が可能な “Inner Bind Dataset” ウィンドウが開きます。
指定されたメニュー属性は、次の通りです。
Inner Bind Dataset(mnuTop) | ||
|---|---|---|
属性 | 値 | 説明 |
captioncolumn | caption | |
idcolumn | id | |
levelcolumn | level | |
メニュー(Menu)をクリックし、“Properties”ウィンドウイベント(Event) 項目の中で “onmenuclick”を選択します。連結する関数を登録します。
mnuTopの“onmenuclick”に登録される“mnuTop_onmenuclick”関数の内容
function mnuTop_onmenuclick(obj:Menu, e:MenuClickEventInfo)
{
if (e.id == "list") {
var row = findRow(dsMenu, "id", e.id);
var url = dsMenu.getColumn(row, "url");
divMain.url = url;
} else if (e.id == "entry") {
var row = findRow(dsMenu, "id", e.id);
var url = dsMenu.getColumn(row, "url");
divMain.url = url;
}
}
function findRow(ds, columnName, value)
{
var count = ds.rowcount;
for (var i = 0; i < count; i++) {
if (ds.getColumn(i, columnName) == value) {
return i;
}
}
return -1;
}HTML5のQuickViewメニューを利用した実行画面です。
左メニュー作成
左側ディビジョン(Div)上にスタティック(Static)を生成します。textがある二つのスタティック(Static)と一緒に、空のスタティック(Static)を三つ追加して作ります。それぞれの属性は、次の通りです。
ボタン(Static) | ||
|---|---|---|
属性 | 値 | 説明 |
id | sttList | Onclick=”divLeft_sttList_onclick” |
text | 顧客リスト照会 | |
ボタン(Static) | ||
|---|---|---|
属性 | 値 | 説明 |
id | sttEntry | Onclick=”divLeft_sttList_onclick” |
text | 顧客詳細照会 | |
スタティック(Static)をクリックして、 “Properties”ウィンドウイベント(Event) 項目の中で“onclick”を選択します。 関連付けする関数を登録します。
“顧客リスト照会”スタティックと、“顧客詳細照会”スタティックとの“onclick”に登録される、“divLeft_sttList_onclick”関数の内容
function divLeft_sttList_onclick(obj:Static, e:ClickEventInfo)
{
if (obj.name == "sttList") {
divMain.url = "Base::list.xfdl";
} else if (obj.name == "sttEntry") {
divMain.url = "Base::entry.xfdl";
}
}コンパイル及び実行
HTML5メニューの中で、Compile File及びQuickViewメニューを使用した実行画面です。