[C con Clase] Obtener el ID de un botón creado fuera del WinMain

Roberto Daniel Virgili rdvsm2179 en gmail.com
Mie Sep 17 21:25:55 CEST 2008


Hola a todos
La cuestión es la siguiente, gracias a Steven tengo como crear los controles en un archivo aparte al del WinMain, pero ete aquí que me surge la siguiente duda, en el código que dejo a continuación, como hago para obtener el ID del botón..?

controles.h
---------------------
#include <windows.h>
HWND * CrearControles( HWND lista[], int nCant, HWND hWnd, HINSTANCE hInst );
---------------------
controles.cpp
---------------------
#include <windows.h>
#include "controles.h"

HWND * CrearControles( HWND lista[], int nCant, HWND hwnd, HINSTANCE hInst )
{
   lista[1] = CreateWindowEx( 0L, "BUTTON", "&Salir",
 	  BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP,
     	  410,220,70,40,hwnd,(HMENU)NULL,NULL,NULL);
   lista[2] = CreateWindowEx( 0L, "BUTTON", "&Editar",
          BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP,
	  320,220,70,40,hwnd,(HMENU)NULL,NULL,NULL);
}
---------------------
botonesFm.cpp
---------------------
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT mensaje, WPARAM wParam, LPARAM lParam)
{
    switch (mensaje)
    {
	case WM_CREATE:
              static HWND listaControles[5];
              static int nControles=0;
              static HINSTANCE hInstancia;
        CrearControles(listaControles, nControles, hwnd, hInstancia );
    	     break;
        case WM_COMMAND:
    	      MessageBox(NULL, " Esta seguro que desea abandonar el 
                             programa...", " Salir ",
			     MB_OKCANCEL | MB_ICONEXCLAMATION);
   	      PostQuitMessage (0);
        .............
---------------------
Creando los controles en el mismo archivo del WinMain me funcionan perfectamente.-

Un gran abrazo y mil disculpas a Steven por tener qué perder tanto
tiempo para entender mi post anterior.-

El autodidacta Daniel C++


Más información sobre la lista de distribución Cconclase