Поделиться через


Сведения о свойствах окна

Свойство окна — это любые данные, назначенные окну. Свойство окна обычно является дескриптором данных, относящихся к окну, но это может быть любое значение. Каждое свойство окна определяется строковым именем. Существует несколько функций, которые позволяют приложениям использовать свойства окна. В этом обзоре рассматриваются следующие темы:

Преимущества использования свойств окна

Свойства окна обычно используются для связывания данных с подклассом окна или окна в приложении MDI с несколькими документами. В любом случае не удобно использовать дополнительные байты, указанные в функции CreateWindow или структуре класса, по следующим двум причинам:

  • Приложение может не знать, сколько дополнительных байтов доступно и как используется пространство. С помощью свойств окна приложение может связать данные с окном без доступа к дополнительным байтам.
  • Приложение должно получить доступ к дополнительным байтам с помощью смещения. Однако доступ к свойствам окна можно получить по строковым идентификаторам, а не по смещениям.

Дополнительные сведения о подклассах см. в разделе Подклассы процедур окон. Дополнительные сведения о окнах MDI см. в разделе Интерфейс нескольких документов.

Назначение свойств окна

Функция SetProp присваивает окну свойство окна и его строковый идентификатор. Функция GetProp извлекает свойство окна, определяемое указанной строкой. Функция RemoveProp уничтожает связь между окном и свойством окна, но не уничтожает сами данные. Чтобы уничтожить сами данные, используйте соответствующую функцию для освобождения дескриптора, возвращаемого методом RemoveProp.

Перечисление свойств окна

Функции EnumProps и EnumPropsEx перечисляют все свойства окна с помощью функции обратного вызова, определяемой приложением. Дополнительные сведения о функции обратного вызова см. в разделе PropEnumProc.

EnumPropsEx включает дополнительный параметр для данных, определяемых приложением, используемых функцией обратного вызова. Дополнительные сведения о функции обратного вызова см. в разделе PropEnumProcEx.