Redimensionar Objetos

08/09/2004 - 16:27 por Xavier | Informe spam
Tengo una aplicación MDI con un Dialogo Modal Centrado
que redimensiono. El problema es que los objetos que
contiene no se dimensionan ni situan de forma correcta
Utilizo el siguiente código.

void CDialogo::Redimensionar()
{
CRect MyRect;
CRect MyRect1;

int iTop, iLeft, iHeight, iWidth;

if (m_cFlexGrid)
{
GetWindowRect(MyRect);

// Edit
m_cEdit.GetWindowRect(&MyRect1);
iTop = (MyRect1.top - MyRect.top);
iLeft = (MyRect1.left - MyRect.left);
iWidth = (MyRect.Width() - iLeft);
iHeight = (MyRect.Height() - (iTop + 150));

m_cEdit.MoveWindow(iLeft, iTop, iWidth, iHeight);
m_cEdit.RedrawWindow();
}
} // Redimensionar

Podeis echarme una mano.
Gracias
 

Leer las respuestas

#1 Sergio
08/09/2004 - 17:22 | Informe spam
Xavier wrote:

Tengo una aplicación MDI con un Dialogo Modal Centrado
que redimensiono. El problema es que los objetos que
contiene no se dimensionan ni situan de forma correcta
Utilizo el siguiente código.

void CDialogo::Redimensionar()
{
CRect MyRect;
CRect MyRect1;

int iTop, iLeft, iHeight, iWidth;

if (m_cFlexGrid)
{
GetWindowRect(MyRect);

// Edit
m_cEdit.GetWindowRect(&MyRect1);
iTop = (MyRect1.top - MyRect.top);
iLeft = (MyRect1.left - MyRect.left);
iWidth = (MyRect.Width() - iLeft);
iHeight = (MyRect.Height() - (iTop + 150));

m_cEdit.MoveWindow(iLeft, iTop, iWidth, iHeight);
m_cEdit.RedrawWindow();
}
} // Redimensionar

Podeis echarme una mano.
Gracias




Después de cada GetWindoRect debes hacer ScreenToClient sobre la varible
que acabas de leer.

Preguntas similares