Controles de un dialogo

22/05/2004 - 05:48 por V Herrera | Informe spam
Hola colegas, mi duda es la siguiente:

¿ cómo puedo saber el hwnd de cada uno de los controles
de un dialogo, sabiendo sólo el hwnd del dialogo ?

esto mediante API.

por ejemplo: tengo una toolbar, y quiero eliminar un
boton, pero sólo tengo el hwnd de la toolbar.

De ante mano gracias.

Preguntas similare

Leer las respuestas

#1 Isidro Muñoz
22/05/2004 - 23:24 | Informe spam
Hola,

Si tienes un toolbar estandar de windows, los botones del toolbar no son
controles. El único control es el Toolbar, vamos que los botones no puedes
hacer un FindWindowEx para obtenerlo. Si usas el spy++ verás como no existen
controles dentro del toolbar.

Eso sería si haces un CreateWindow de algún control y cuyo padre le indicas
el toolbar, pero en ese caso estarías creando un control que cuelgue de un
toolbar, pero los botones los controla el propio ToolBar.

Para borrar un boton de un Toolbar se hace enviando un mensaje al hwnd del
Toolbar.

SendMessage(hWndToolbar,TB_DELETEBUTTON,iboton,0);

iboton será el número del boton del Toolbar, de todos modos mira en la msdn
Toolbar Control Reference.
Te vendrán todos los mensajes y eventos del control.

Saludos.
Isidro.

"V Herrera" escribió en el mensaje
news:108e301c43faf$a365f010$
Hola colegas, mi duda es la siguiente:

¿ cómo puedo saber el hwnd de cada uno de los controles
de un dialogo, sabiendo sólo el hwnd del dialogo ?

esto mediante API.

por ejemplo: tengo una toolbar, y quiero eliminar un
boton, pero sólo tengo el hwnd de la toolbar.

De ante mano gracias.
Respuesta Responder a este mensaje
#2 V Herrera
23/05/2004 - 18:51 | Informe spam
Hola, gracias por la explicacion, pero mi pregunta es
otra, lo de la toolbar es solo un ejemplo, lo que pasa es
que yo quiero eliminar controles, pero sin tener idea de
su ID o hWnd, como tu dices, puede enviar un mensaje,
pero antes nesecito saber el id del control o boton, eso
es lo quiero saber: ¿como obtengo el id y/o hwnd de cada
uno de los controles de un dialogo? (no necesariamente
toolbar).

Desde ya gracias
Respuesta Responder a este mensaje
#3 Rodrigo Corral [MVP]
24/05/2004 - 18:13 | Informe spam
Puedes enumerar los controles (si tienen manejador de ventana, es decir no
son windowless) usando EnumChildWindows.


Rodrigo Corral González [MVP]

microsoft.public.es.vc FAQ
http://vcfaq.europe.webmatrixhosting.net
Respuesta Responder a este mensaje
#4 Isidro Muñoz
24/05/2004 - 22:00 | Informe spam
Si sabes la clase a la que pertenece el hijo puedes usar:


FindWindowEx(hwnd,NULL,"RICHEDIT",NULL);

Este ejemplo buscaría un hijo qu epertenece a la clase RICHEDIT.

Saludos.
Isidro

"V Herrera" escribió en el mensaje
news:10cd001c440e6$2bed3c40$

Hola, gracias por la explicacion, pero mi pregunta es
otra, lo de la toolbar es solo un ejemplo, lo que pasa es
Respuesta Responder a este mensaje
#5 Jordi Maycas
28/06/2004 - 18:22 | Informe spam
me supongo lo q quieres hacer... yo hice una aplicacion en la que tenia
cuadros de dialogo, y en funcion de los datos q tenia, pues mostraba o
ocultaba controles. Y justamente lo hize asi, ocultando y visualizando... no
se si te sirve.

"Isidro Muñoz" <imunoz@()daipro.net> escribió en el mensaje
news:
Si sabes la clase a la que pertenece el hijo puedes usar:


FindWindowEx(hwnd,NULL,"RICHEDIT",NULL);

Este ejemplo buscaría un hijo qu epertenece a la clase RICHEDIT.

Saludos.
Isidro

"V Herrera" escribió en el mensaje
news:10cd001c440e6$2bed3c40$

Hola, gracias por la explicacion, pero mi pregunta es
otra, lo de la toolbar es solo un ejemplo, lo que pasa es


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida