Você está aqui: Delphi ::: Win32 API (Windows API) ::: Formulários e Janelas

Listando todas as janelas (ou controles) filhas a partir do handle de uma janela pai

Quantidade de visualizações: 13199 vezes
Em algumas situações nós precisamos listar todas janelas filhas (ou controles) pertencentes a uma determinada janela pai, talvez com a intenção de obter ou enviar conteúdo a estas janelas ou controles. Isso pode ser feito com o auxílio da função EnumChildWindows() da API do Windows. Veja sua assinatura:

Este trecho de código ou resolução de exercício faz parte do Super Pack 12.000 Dicas e Truques de Programação e 1.500 Exercícios Resolvidos em Java, Python, VisuAlg, Portugol, Delphi, C#, C, C++, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Aprenda a programar resolvendo problemas do mundo real. Tudo em português, com comentários em português.

Quero Ser Apoiador(a)


Veja que a função requer um handle para a janela pai e um ponteiro para uma função de Callback, que será chamada a cada vez que uma nova janela filha for encontrada. No argumento lParam nós podemos passar informações adicionais para a função. No exemplo abaixo eu passei um TMemo, para facilitar a exibição do ID, nome de classe e título (caption) da janela filha. Eis o código:

Este trecho de código ou resolução de exercício faz parte do Super Pack 12.000 Dicas e Truques de Programação e 1.500 Exercícios Resolvidos em Java, Python, VisuAlg, Portugol, Delphi, C#, C, C++, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Aprenda a programar resolvendo problemas do mundo real. Tudo em português, com comentários em português.

Quero Ser Apoiador(a)


Aqui eu rodei um código adicional para obter o handle da Calculadora do Windows e listei todos os seus controles. O resultado foi algo como:

ID: 403 - Classe: Edit - Caption: 0,
ID: 113 - Classe: Button - Caption: MC
ID: 114 - Classe: Button - Caption: MR
ID: 115 - Classe: Button - Caption: MS
ID: 116 - Classe: Button - Caption: M+
ID: 131 - Classe: Button - Caption: 7
ID: 128 - Classe: Button - Caption: 4
ID: 125 - Classe: Button - Caption: 1
ID: 124 - Classe: Button - Caption: 0
ID: 132 - Classe: Button - Caption: 8
ID: 129 - Classe: Button - Caption: 5
ID: 126 - Classe: Button - Caption: 2
ID: 80 - Classe: Button - Caption: +/-
ID: 133 - Classe: Button - Caption: 9
ID: 130 - Classe: Button - Caption: 6
ID: 127 - Classe: Button - Caption: 3
ID: 85 - Classe: Button - Caption: .
ID: 90 - Classe: Button - Caption: /
ID: 91 - Classe: Button - Caption: *
ID: 93 - Classe: Button - Caption: -
ID: 92 - Classe: Button - Caption: +
ID: 112 - Classe: Button - Caption: =
ID: 83 - Classe: Button - Caption: Backspace
ID: 82 - Classe: Button - Caption: CE
ID: 81 - Classe: Button - Caption: C
ID: 401 - Classe: Static - Caption:
ID: 107 - Classe: Button - Caption: 1/x
ID: 103 - Classe: Button - Caption: sqt
ID: 109 - Classe: Button - Caption: %
ID: 1000 - Classe: Static - Caption:

Você pode usar algumas das funções documentadas nesta seção para obter o handle da janela pai cujas janelas filhas você deseja listar.

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.

Link para compartilhar na Internet ou com seus amigos:

Desafios, Exercícios e Algoritmos Resolvidos de Delphi

Veja mais Dicas e truques de Delphi

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 27 usuários muito felizes estudando em nosso site.