FormatSize コントロール属性

このビットが静的テキスト コントロールに設定されている場合、このコントロールでは、表示されるテキストを、バイト数を表す数値として自動的に書式設定しようとします。 適切な書式設定を行うには、コントロールのテキストを、512 バイト単位で表現される数値を表す文字列に設定する必要があります。 これで、表示される値は、キロバイト (KB)、メガバイト (MB)、またはギガバイト (GB) で書式設定され、単位を表す適切な文字列と共に表示されます。 詳細については、「Text コントロール」を参照してください。

元のテキストの数値 使用される単位文字列
20480 未満 KB
20971520 未満 MB
10737418240 未満 GB

 

有効なコントロール

Decimal 16 進数 コントロール
524288 0x00080000 msidbControlAttributesFormatSize

 

解説

コントロールにこの属性を設定するには、Control テーブル内のコントロールのレコードの Attributes 列に FormatSize ビットを含めます。 コントロールのテキストは、512 バイト単位で表現される数値を表す文字列に設定する必要があります。 単位文字列のテキストは、UIText テーブルで定義されます。 単位文字列の位置は、LeftUnit プロパティによって制御されます。 LeftUnit プロパティがいずれかの値に定義されている場合、単位文字列は数値の前に表示されます。 コントロールに関連付けられているテキストに数字以外が表示される場合、表示される値は定義されていません。

実行時に、インストーラーでは PrimaryVolumeSpaceRequired プロパティをインストールに必要な合計バイト数 (512 の単位) に解決します。 FormatSize ビットを含む静的テキスト コントロールを使用すると、インストールに必要なバイト数の合計を必要に応じて KB、MB、または GB 単位で自動的に書式設定し、ラベルを付けることができます。 この例では、合計バイト数が 18,336,768 であるとします。 インストーラーでは、PrimaryVolumeSpaceRequired プロパティの値を、18,336,768 を 512 で除算した値、または 35,814 に設定します。 FormatSize を使用してテキスト コントロールによって表示される数値は 17 MB になります。

元のテキストの数値は 512 の単位で示されます。 上の表では、文字列 20,480 は KB の文字列に対応しています。20,480 に 512 を掛けると、結果が 10,485,760 バイトまたは 10,240 KB になるからです。

前の表に示した単位文字列は、単位文字列のテキストが定義されている UIText テーブルのキーを表します。

単位文字列の位置は、LeftUnit プロパティによって制御されます。 LeftUnit プロパティがいずれかの値に定義されている場合、単位文字列は数値の前に表示されます。

コントロールに関連付けられているテキストに数字以外が表示される場合、表示される値は定義されていません。

詳細については、「コントロール属性」と「コントロール」を参照してください。