視窗屬性 是指派給視窗的任何數據。 視窗屬性通常是視窗特定數據的控制代碼,但也可能是任何其他值。 每個視窗屬性都是以字串名稱來識別。 有數個函式可讓應用程式使用視窗屬性。 本概觀討論下列主題:
使用視窗屬性的優點
視窗屬性通常用來將數據與子類別化視窗或多文檔介面 (MDI) 應用程式中的視窗產生關聯。 不論是哪一種情況,在 CreateWindow 函式或類別結構中使用指定的多餘位元組並不方便,原因如下:
- 應用程式可能不知道有多少額外的位元組可用,或空間的使用方式。 藉由使用視窗屬性,應用程式可以將數據與視窗產生關聯,而不需要存取額外的位元組。
- 應用程式必須使用位移來存取額外的位元組。 不過,視窗屬性是由其字串標識碼存取,而不是依位移來存取。
如需子類別化的詳細資訊,請參閱 視窗程式子類別化。 如需 MDI 視窗的詳細資訊,請參閱 多個檔案介面。
指派窗口屬性
SetProp 函式會將視窗屬性及其字元串標識符指派給視窗。 GetProp 函式會擷取指定字串所識別的視窗屬性。 RemoveProp 函式會終結視窗與視窗屬性之間的關聯,但不會終結數據本身。 要刪除數據本身,請使用適當的函式釋放 RemoveProp所傳回的句柄。
列舉窗口屬性
EnumProps 和 EnumPropsEx 函式會使用應用程式定義的回呼函式列舉視窗的所有屬性。 如需回呼函式的詳細資訊,請參閱 PropEnumProc。
EnumPropsEx 包含回呼函式所使用之應用程式定義數據的額外參數。 如需回呼函式的詳細資訊,請參閱 PropEnumProcEx。