IPropertyDescription::FormatForDisplay 方法 (propsys.h)
取得屬性值的格式化 Unicode 字串表示。
語法
HRESULT FormatForDisplay(
[in] REFPROPVARIANT propvar,
[in] PROPDESC_FORMAT_FLAGS pdfFlags,
[out] LPWSTR *ppszDisplay
);
參數
[in] propvar
類型: REFPROPVARIANT
PROPVARIANT 結構的參考,其中包含 屬性的類型和值。
[in] pdfFlags
一或多個表示屬性字串格式的 PROPDESC_FORMAT_FLAGS 旗標,這些旗標是位或多個值。
[out] ppszDisplay
類型: LPWSTR*
包含顯示文字之 Null 終止 Unicode 字串之指標的位址。
傳回值
類型: HRESULT
傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
字串已複製,並以 Null 終止,而不會截斷。 由於空的輸入字串,或從格式化為空字串的非空白值,此字串可能會傳回空白。 |
|
從VT_EMPTY產生的空字串。 |
|
pszText 參數為 NULL。 |
|
複製作業因為空間不足而失敗。 目的地緩衝區會修改為包含理想結果的截斷版本,並且會以 Null 終止。 |
備註
您必須使用 CoInitialize 或 OleInitialize 初始化元件物件模型 (COM) ,才能呼叫 IPropertyDescription::FormatForDisplay。
成功時,這個方法會取得指定 PROPERTYKEY 屬性值的格式化 Unicode 字串表示,以及一或多個 PROPDESC_FORMAT_FLAGS。
此方法的目的是將數據轉換成適合向用戶顯示的字串。 此值會根據目前的地區設定、用戶的語言、 PROPDESC_FORMAT_FLAGS和屬性索引鍵所指定的屬性描述來格式化。 如需屬性描述架構如何影響值格式的資訊,請參閱 displayInfo、stringFormat、booleanFormat、numberFormat、NMDATETIMEFORMAT 和 enumeratedList。 一般而言, PROPDESC_FORMAT_FLAGS 是用來修改屬性描述所指定的格式。
輸出字串可以包含 Unicode 方向字元。 這些非步調字元會影響 Unicode 雙向演算法,讓值在由左至右 (LTR) 語言繪製到右至左 (RTL) 視窗時顯示,反之亦然。 這些字元包括下列各項: "\x200e", "\x200f", "\x202a", "\x202b", "\x202c", "\x202d", "\x202e".
下列屬性使用特殊格式,而且不受 PROPDESC_FORMAT_FLAGS (範例所參考,適用於目前地區設定設定為英文的字串;一般而言,輸出會當地語系化,但未) 。
屬性 | [格式] |
---|---|
System.FileAttributes | 下列檔案屬性會轉換成字母,並附加以建立字串 (例如,0x1801 (FILE_ATTRIBUTE_READONLY的值 |FILE_ATTRIBUTE_COMPRESSED |FILE_ATTRIBUTE_OFFLINE) 转换成 「RCO」) :
|
System.Photo.ISOSpeed | 例如,“ISO-400”。 |
System.Photo.ShutterSpeed |
APEX 值會使用此公式轉換成曝光時間:
例如,“2 秒”。或 「1/125 sec.」。。 |
System.Photo.ExposureTime | 例如,“2 秒”。或 「1/125 sec」。。 |
System.Photo.Aperture |
APEX 值會使用此公式轉換成 F 數位:
例如,“f/5.6”。 |
System.Photo.FNumber | 例如,“f/5.6”。 |
System.Photo.SubjectDistance | 例如,“15 m” 或 “250 mm”。 |
System.Photo.FocalLength | 例如,“50 mm”。 |
System.Photo.FlashEnergy | 例如,“500 bpcs”。 |
System.Photo.ExposureBias | 例如,“-2 step”、“0 step” 或 “+3 step”。 |
System.Computer.DecoratedFreeSpace | 例如,「105 MB 免費 13.2 GB」。 |
System.ItemType | 例如,“Application” 或 “JPEG Image”。 |
System.ComputerName | 例如,“LITWARE05 (这部计算机) ” 或 “testbox07”。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | propsys.h |