オブジェクトのパフォーマンスの最適化

画像のパフォーマンスの最適化

フォームに画像が含まれていると、レンダリングするときに、処理時間が長くなります。画像を使用する場合、ファイルサイズを最小に抑えるには、コンパクトなファイル形式で、できるだけ小さい寸法の画像を使用します。画像のサイズを目的の寸法に変更してから、フォームに追加します。画像をフォームに追加した後での画像のサイズ変更は避けてください。

フォームのレンダリング時のパフォーマンスを最適化するには、コーナーを四角にし、線を正確に水平および垂直にします。正確に水平または垂直であるように見える線でも、わずかに傾いている場合があります。

レイアウトパレットで、水平線と垂直線の傾きをチェックすることができます。「高さ」オプションは水平線の傾きを表し、「幅」オプションは垂直線の傾きを表します。次の例では、垂直線には約 0.5 ミリの小さな傾きがあります。幅が 0 ミリの場合、線は正確に垂直になります。

個別オプション選択によるパフォーマンスの最適化

チェックボックスオブジェクト、リストボックスオブジェクトおよびラジオボタンオブジェクトは、個別のオプション選択を提供します。リストボックスとチェックボックスは、ラジオボタンよりも高速にレンダリングされます。

サブフォームのパフォーマンスの最適化

Designer では、テキスト、線、画像などのボイラープレートオブジェクト(スタティックオブジェクト)は、テキストフィールドや画像フィールドなどの可変のコンテンツを含むオブジェクトと区別されます。

例えば、インタラクティブフォームには、ユーザーに情報を提供するテキストラベルや、ユーザーからの情報を取り込むテキストフィールドオブジェクトを含めることができます。

サブフォームは、コンテンツを含むオブジェクトの種類の 1 つです。多くの場合、サブフォームは、各サブフォームに連結されるデータの構造に基づいてグループ化されます。繰り返し、オプション、および条件付きの各データグループをサブフォームに連結する機能を使用すると、スクリプトを使用して同じ結果を実現する場合よりも、デザイン上のエラーが生じるリスクが小さくなります。

例えば、繰り返しデータグループのオブジェクトを含むサブフォームを作成できます。このフォームをレンダリングすると、すべてのデータグループを示すために必要な数のサブフォームインスタンスが Forms によって作成されます。

サブフォームを使用する場合は、最適なパフォーマンスを得るために以下の点を考慮してください。

  • 繰り返しサブフォームや階層化されたサブフォームを使用すると、フォームのレンダリング時により多くの処理が必要になります。これらのサブフォームを使用するのは、それによって別のオプションよりも高いパフォーマンスが得られる場合のみにします。例えば、繰り返しサブフォームを使用することで、多数の繰り返しオブジェクトを使用する必要がなくなる場合があります。

  • サブフォーム内で改ページを許可すると、Forms で改ページを適用しない場合でも処理が増えます。例えば、サブフォームの位置、サイズまたはコンテンツによっては、改ページできない場合があります。パフォーマンスを最適化するには、サブフォーム内の改ページを無効にします。デフォルトでは、改ページが許可されています。

テキストフィールドのパフォーマンスの最適化

デフォルトでは、テキストフィールドオブジェクトのエントリは、プレーンテキストとして形式設定されます。このオプションを変更して、リッチテキスト形式を許可することができます。

ただし、プレーンテキストのエントリでは、デザイン時に使用したフォント、スタイルおよびサイズがユーザー入力に適用されます。フォームをより効率的にレンダリングするには、フォームデザインで使用したテキストプロパティを使用します。

リッチテキストのエントリでは、オブジェクトに入力されたテキストのフォントスタイルおよびフォントサイズをユーザーがカスタマイズすることができます。リッチテキストのエントリは、説明的な情報などに使用すると便利ですが、余分な属性が増えるのでパフォーマンスが低下します。

マスターページ上のオブジェクトとボディページ上のオブジェクトのパフォーマンス

マスターページ上のオブジェクトは、Forms がフォームをレンダリングするときに、より多くの処理時間がかかります。可能な場合は、ボディページ上にオブジェクトを配置してください。

オブジェクトの数を減らすためのヒント

フォームのファイルサイズには、フォーム上のオブジェクトの数が影響します。フォーム上のオブジェクトの数を最小に抑えるには、以下の一般的なヒントを検討してください。

  • ボックスを作成する場合は、4 つの個別の線を結合するのではなく、1 つの長方形オブジェクトを使用します。

  • フィールドオブジェクトまたはサブフォームオブジェクトの境界線を作成する場合は、別個のボックスを作成するのではなく、オブジェクトの境界線属性を使用します。

  • オブジェクトの背景を作成する場合は、別個の網掛けのボックスオブジェクトを作成するのではなく、背景の塗りつぶしを使用します。

  • キャプションには、別個のテキストオブジェクトを使用するのではなく、オブジェクトのキャプションプロパティを使用します。

  • 複数のテキストオブジェクトを 1 つのテキストオブジェクトに結合します。この方法は、フォームを Designer に読み込んだ後で特に役立ちます。

オブジェクトの複雑さを減らすためのヒント

フォームのファイルサイズには、フォーム上のオブジェクトの複雑さが影響します。単純なオブジェクトは、複雑なオブジェクトよりも効率的に処理できます。オブジェクトの複雑さを最小に抑えるには、以下の一般的なヒントを検討してください。

  • フォント、スタイルおよびサイズの数を最小に抑えて、キャッシュされたフォント情報を活用します。

  • 可能な場合は、伸縮するダイナミックオブジェクトではなく固定のオブジェクトを使用します。

  • オブジェクトの上に別のオブジェクトを構築することを避けます。特に、オブジェクトを 4 レイヤー以上重ねることは避けてください。