数値フィールド、日付フィールド、時刻フィールドへのデフォルト書式設定の使用
Delphi では、書式付き表示および書式編集用の組み込みルーチンとインテリジェントなデフォルト書式設定機能が下記コンポーネントに用意されています。
- Data.DB.TFloatField
- Data.DB.TCurrencyField
- Data.DB.TBCDField
- Data.DB.TFMTBCDField
- Data.DB.TIntegerField
- Data.DB.TSmallintField
- Data.DB.TWordField
- Data.DB.TDateField
- Data.DB.TDateTimeField
- Data.DB.TTimeField
- Data.DB.TSQLTimeStampField
これらのルーチンを使用するために必要な操作はありません。
デフォルト書式設定は次のルーチンで実行されます。
フィールド コンポーネントの書式設定ルーチン :
ルーチン | 使用元 |
---|---|
FormatFloat |
TFloatField、TCurrencyField |
FormatDateTime |
TDateField、TTimeField、TDateTimeField |
SQLTimeStampToString |
TSQLTimeStampField |
FormatCurr |
TCurrencyField、TBCDField |
BcdToStrF |
TFMTBCDField |
フィールド コンポーネントには、そのコンポーネントのデータ型に適した書式設定プロパティのみ使用できます。
日付、時刻、通貨、数値のデフォルトの書式設定規則は、[コントロール パネル]にある[地域の設定]プロパティに基づいています。たとえば、米国のデフォルト設定では、TFloatField 列の Currency プロパティを True に設定すると、値 1234.56 の DisplayFormat プロパティが $1234.56 に設定される一方、EditFormat は 1234.56 になります。
設計時または実行時にフィールド コンポーネントの DisplayFormat プロパティと EditFormat プロパティを編集して、そのフィールドのデフォルトの表示設定をオーバーライドすることができます。また、Data.DB.TField.OnGetText イベントと Data.DB.TField.OnSetText イベントのハンドラを記述して、フィールド コンポーネントのカスタム書式設定を実行時に行うこともできます。