この項では、新しいフォームを作成し、コントロールをそのフォームに追加する方法について説明します。次のトピックについて説明します。
セクションを使用して、フォームのコンテンツとレイアウトを定義します。
メモ:Designerは、フォームの上から下、左から右へフォームを配置します。コントロール間で間隔を空けるには、改行を使用します。
コントロールをフォームに追加する
[Fieldというコントロールをフォームの最下部に追加します。
]をクリックします。Designerは、複数のコントロールを同じ名前でフォームに追加した場合、コントロール名の最後に一意の番号がDesignerによって追加されます。
コントロールの次のプロパティを定義します。
フォームフィールドコントロールには、[データ項目マッピング]プロパティシートも[電子メール通知]プロパティシートもありません。
コントロールごとに、セクション 6.5, フォームコントロールのリファレンスを参照してください。
タブ( の順に選択)でそれぞれのプロパティを指定します。詳細については、タブをクリックして、ユーザがフォームで行える作業を定義します。たとえば、ユーザがフォームを送信したりキャンセルしたりできるようにするアクションを追加できます。
要求フォームには最低限、SubmitActionが必要になります。SubmitActionがない場合、要求は処理されません。CancelActionもすべてのフォームに設定することをお勧めします。各承認フォームには、最低1つのアクションを定義している必要があります。
[アクション]ページで、
をクリックして、新しいアクションを追加します。次のようにフィールドに値を入力します。
フィールド |
説明 |
---|---|
|
フォームに追加するアクションボタンの場所を選択します。 フォームの最下部にアクションボタンを配置します。(デフォルト.) : フォームの最上部にアクションボタンを配置します。 : フォームの最上部と最下部にボタンを配置します。 |
|
ボタンのアクションを選択します。詳細については、セクション 6.4, アクションのリファレンスを参照してください。 |
|
アクションボタンの後に挿入する行数を定義します。 |
フォームを保存します。
イベントハンドラに添付するスクリプトは、ブラウザウィンドウではなく適切なコントロールにスコープされます。
イベントを定義しプロパティシートを開くフォームコントロールを選択します。
イベントプロパティに移動して、イベントを追加します。Designerにより、
というデフォルトイベント名で行が追加されます。カスタムイベントの作成」を参照してください。
フィールドをクリックし、 または イベントを選択します。他のイベントを追加する方法について詳しくは、「フィールドをクリックします。このフィールドにスクリプトを直接入力することも、ボタンをクリックして にアクセスすることもできます。
アクションスクリプトを定義し、構文を確認して、
をクリックします。この手順を繰り返して、イベントをこのコントロールに追加します。onChangeおよびonLoadイベントの詳細については、セクション 6.5.2, 一般的なフォームコントロールのプロパティに記したイベントプロパティの説明を参照してください。
フォーム上で、他のコントロールに条件またはユーザアクションを通知する独自のイベントを作成できます。fireEvent()メソッドを使用しイベントの名前を渡して、イベントを明示的に開始する必要があります。
プロパティを使用してイベントを作成します。イベントには任意の名前を付けることができます。ユーザが入力した値に一致するグループだけを返すクエリを、[グループ]コンテナで実行することもできます。図 6-7に示した例では、ユーザは名前フィールドに値を入力します。ユーザがタブで次のフィールドに移動すると、ドロップダウンリストのコンテンツは、 カスタムイベントで開始したクエリから取り込まれます。
図 6-7 ユーザアプリケーションのランタイムカスタムイベントのサンプル
図 6-8に示します。
フィールドは、 イベントで イベントを開始する プロパティを定義します。この定義を図 6-8 field.FireEvent()メソッドのサンプル
イベントは、 というクエリを実行する式を含みます。
図 6-9 カスタムイベント定義の例
クエリの使用の詳細については、「セクション 6.7, フォームでのDALクエリの使用」を参照してください。
表 6-2で説明するいずれかの方法でスクリプトを用意できます。
タブを使用して、ページレベルスコープを持つスクリプトを定義します。ページレベルスコープとは、スクリプトがページロード時にロードされ、フォームの存続中使用できることを意味します。表 6-2 スクリプトタイプ
これらのスクリプトはページのロード時にロードされるので、フォームコントロールとそれに関連付けられたイベントハンドラスクリプトは、ページがロードされるときに、スコープに入っていません。ページレベルスクリプトとイベントレベルスクリプト間で依存関係をコード化しないようにしてください。ただし、イベントレベルスクリプト内からページレベルスクリプトをコールできます。
外部JavaScriptファイルへのリンクを追加する
[スクリプト]タブを開いて、をクリックします。
次のようにフィールドに入力します。
インラインスクリプトを作成する
[スクリプト]タブを開いて、をクリックします。
次のようにフィールドに入力します。
インラインスクリプトと外部スクリプトはどちらもページのロード時に実行されますが、ページがコントロールをロードする前に実行されます。また、特にフォームコントロールイベントでコールされたときにも実行されます。