C/Visual C - controles en RT

 
Vista:

controles en RT

Publicado por sat (9 intervenciones) el 20/05/2003 21:26:00
sabes como crear controles en tiempo de ejecucion y como salir de una aplicacion SDI mediante un boton. Gracias por tu respuesta
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

controles en RT

Publicado por Alejandro (1153 intervenciones) el 11/06/2025 00:09:57
¡Claro! Aquí tienes una guía sobre cómo crear controles en tiempo de ejecución y cómo salir de una aplicación SDI (Single Document Interface) mediante un botón en C++ utilizando MFC (Microsoft Foundation Classes).

1. Crear controles en tiempo de ejecución



Para crear controles en tiempo de ejecución en una aplicación MFC, puedes usar el siguiente enfoque:

1
2
3
4
5
6
7
8
9
10
11
// En tu clase de vista (por ejemplo, CMyView)
void CMyView::OnCreateControls()
{
    // Crear un botón en tiempo de ejecución
    CButton* pButton = new CButton();
    pButton->Create(_T("Salir"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
                    CRect(10, 10, 100, 30), this, IDC_MYBUTTON);
 
    // Agregar el botón a la lista de controles
    m_myControls.Add(pButton);
}

Asegúrate de llamar a `OnCreateControls()` en el método `OnInitialUpdate()` de tu vista para que los controles se creen cuando la vista se inicializa.

2. Manejar el evento del botón para salir de la aplicación



Para salir de la aplicación SDI mediante un botón, primero debes manejar el evento de clic del botón. Puedes hacerlo de la siguiente manera:

1. Agregar un manejador de eventos:
En el constructor de tu vista, agrega el manejador de eventos para el botón:

1
2
3
4
5
void CMyView::OnMyButtonClicked()
{
    // Cerrar la aplicación
    AfxGetApp()->OnClose();
}

2. Conectar el manejador al botón:
Asegúrate de conectar el manejador de eventos al botón que creaste:

1
2
pButton->SetDlgCtrlID(IDC_MYBUTTON);
pButton->ShowWindow(SW_SHOW);

3. Registrar el manejador de eventos:
En el archivo de encabezado de tu vista, agrega la declaración del manejador:

1
afx_msg void OnMyButtonClicked();

Y en el archivo de implementación, asegúrate de registrar el manejador en el mapa de mensajes:

1
2
3
BEGIN_MESSAGE_MAP(CMyView, CView)
    ON_BN_CLICKED(IDC_MYBUTTON, &CMyView::OnMyButtonClicked)
END_MESSAGE_MAP()

Resumen



Con estos pasos, habrás creado un botón en tiempo de ejecución y configurado su evento para cerrar la aplicación SDI. Asegúrate de ajustar los identificadores y las posiciones de los controles según tus necesidades.

¡Buena suerte con tu aplicación, Sat!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar