Ajustar ventanas en Visual C++ 5.0

Tengo un problemilla con las ventanas que hago utilizando este entorno: Visual C++ 5.0 y MFC's y es que dependiendo de la resolución del sistema operativo Windows se me ven o no las etiquetas y botones. Es decir dependo de la resolución. Me gustaría saber si tengo que activar alguna característica o propiedad a la hora de crear la ventana y los controles o si existe alguna clase de la que pueda heredar que me solucione el problema al ajustarse automáticamente a la resolución del sistema operativo.
Muchas gracias.
Respuesta
1
Bastaría con llamar a la función ShowWindow con el parámetro SW_SHOWMAXIMIZED, tras haberla creado.
De todas formas siempre que quieras saber el ancho y alto de pantalla puedes obtenerlo así:
int nAnchoPantalla=::GetSystemMetrics(SM_CXSCREEN);
int nAltoPantalla=::GetSystemMetrics(SM_CYSCREEN);
Pero la ventana es del tipo dialogo... con lo cual no tiene resize, ni maximize.
Un saludo y gracias.
Pues entonces aquí tienes un trozo de código para tu función OnInitDialog() que hace que el dialogo ocupe toda la pantalla y ademas centra los controles, de forma que no queden en el margen superior izquierdo por el agrandamiento del dialogo:
int nAnchoPantalla=::GetSystemMetrics(SM_CXSCREEN);
int nAltoPantalla=::GetSystemMetrics(SM_CYSCREEN);
CRect rcScreen(0,0,nAnchoPantalla,nAltoPantalla);
MoveWindow(rcScreen);
CRect rcCtrl;
CWnd * pWnd;
pWnd=GetDlgItem (IDC_FONDO);
pWnd->GetWindowRect(&rcCtrl);
CPoint ptDesplazamiento = CPoint(nAnchoPantalla/2,nAltoPantalla/2)-rcCtrl.CenterPoint();
pWnd->MoveWindow(rcCtrl+ptDesplazamiento);
pWnd=GetDlgItem (IDC_PIC1);
pWnd->GetWindowRect(&rcCtrl);
pWnd->MoveWindow(rcCtrl+ptDesplazamiento);
pWnd=GetDlgItem (IDC_PIC2);
pWnd->GetWindowRect(&rcCtrl);
pWnd->MoveWindow(rcCtrl+ptDesplazamiento);

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas