Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


COMUNICACION ENTRE CMAINFRAME Y CDOCUMENT

Aqui programadores en la plataforma Win32 con Visual C++ de Microsoft...

Moderador: latindeveloper

COMUNICACION ENTRE CMAINFRAME Y CDOCUMENT

Notapor mcd17arg el Lun Oct 08, 2007 9:35 pm

Hola :lol: estoy desarrollando un programa en el cual necesito utilizar un metodo de CMainFrame para ser invocado desde la clase CDocument.
Logre acceder al metodo pero desde la clase CView con la siguiente instruccion
Código: Seleccionar todo

void CGraficadorView::OnToolAvance()
{
   CMainFrame* pMainFrame = (CMainFrame*)GetParentFrame();
      .
      .
       .
   pMainFrame->RedrawWindow();
// por ejemplo lo utilizo de manera efectiva aqui en un metodo de CView
}



pero esto mismo no lo puedo hacer desde un metodo q este en la clase CDocument.
alguien sabe como puedo acceder a metodos de la clase CMainFrame desde la clase CDocument??? muchas gracias desde ya!!
EL LOCO MARCE Y SU MALDITO LUNES...
mcd17arg
Usuario Activo
Usuario Activo
 
Mensajes: 20
Registrado: Mar Abr 20, 2004 4:29 am
Ubicación: salta capital

Notapor mcd17arg el Lun Oct 08, 2007 9:56 pm

Holaaa a todos, queria comentarles que ya encontre la solucion a mi problema y lo encontre en este mismo foro.

Para acceder a tu ventana principal CMainFrame desde cualquier parte de la aplicacion... siempre y cuando ya este inicializada:

Código: Seleccionar todo
CMainFrame* wnd = (CMainFrame *)AfxGetMainWnd();
wnd->MiFuncion();



Luego se puede acceder a cualquier funcion de ella
Otra opcion mas segura es utilizar una macro:


Código: Seleccionar todo
CMainFrame* wnd =
DYNAMIC_DOWNCAST(CMainFrame,AfxGetMainWnd());

if (wnd){
   wnd->MiFuncion();
}


Gracias a todos, y al administrador!!!
EL LOCO MARCE Y SU MALDITO LUNES...
mcd17arg
Usuario Activo
Usuario Activo
 
Mensajes: 20
Registrado: Mar Abr 20, 2004 4:29 am
Ubicación: salta capital


Volver a Visual C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados