Sobre as propriedades da janela
Uma propriedade de janela é qualquer dado atribuído a uma janela. Uma propriedade de janela geralmente é um identificador dos dados específicos da janela, mas pode ser qualquer valor. Cada propriedade de janela é identificada por um nome de cadeia de caracteres. Há várias funções que permitem que os aplicativos usem propriedades de janela. Esta visão geral discute os seguintes tópicos:
- Vantagens de usar propriedades de janela
- Atribuindo propriedades de janela
- Enumerando propriedades da janela
Vantagens de usar propriedades de janela
As propriedades da janela normalmente são usadas para associar dados a uma janela subclasse ou a uma janela em um aplicativo MDI (interface MDI). Em ambos os casos, não é conveniente usar os bytes extras especificados na função CreateWindow ou na estrutura de classe pelos dois motivos a seguir:
- Um aplicativo pode não saber quantos bytes extras estão disponíveis ou como o espaço está sendo usado. Usando propriedades de janela, o aplicativo pode associar dados a uma janela sem acessar os bytes extras.
- Um aplicativo deve acessar os bytes extras usando deslocamentos. No entanto, as propriedades da janela são acessadas por seus identificadores de cadeia de caracteres, não por deslocamentos.
Para obter mais informações sobre subclasse, consulte Subclasse de procedimento de janela. Para obter mais informações sobre janelas MDI, consulte Interface de vários documentos.
Atribuindo propriedades de janela
A função SetProp atribui uma propriedade de janela e seu identificador de cadeia de caracteres a uma janela. A função GetProp recupera a propriedade de janela identificada pela cadeia de caracteres especificada. A função RemoveProp destrói a associação entre uma janela e uma propriedade de janela, mas não destrói os dados em si. Para destruir os próprios dados, use a função apropriada para liberar o identificador retornado por RemoveProp.
Enumerando propriedades da janela
As funções EnumProps e EnumPropsEx enumeram todas as propriedades de uma janela usando uma função de retorno de chamada definida pelo aplicativo. Para obter mais informações sobre a função de retorno de chamada, consulte PropEnumProc.
EnumPropsEx inclui um parâmetro extra para dados definidos pelo aplicativo usados pela função de retorno de chamada. Para obter mais informações sobre a função de retorno de chamada, consulte PropEnumProcEx.