problemas al redimensionar controles

Iniciado por xkiz ™, 14 Mayo 2010, 20:00 PM

0 Miembros y 1 Visitante están viendo este tema.

xkiz ™

bien el tema es el siguiente: tengo en mi pc como sistema operativo primario Windows 7 y en Virtual tengo XP. en XP tengo instalado todo lo referido a la programación y etc....
el otro dia se me ocurrio re-hacer un proyecto que tenia echo en Visual Basic 6.0,  en C++, el C++ que tengo es el que viene co ese Visual Studio, osea el 6. para este proyecto en cuestion, necesitaba poner en un Dialogo un TabStrip, y que dicho TabStrip cambie sus dimensiones segun el Dialog parent, bien eso lo hago de la siguiente manera:

Código (cpp) [Seleccionar]

BOOL CALLBACK DialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam){
switch (message){
case WM_SIZE:
////////////////////////////////////////////////////////
RECT rc;
RECT rc2;

int hDlgWidth;
int hDlgHeight;
int tabgWidth;
int tabHeight;

GetWindowRect(hDlg, &rc);
GetWindowRect(Tab, &rc2); //Tab es el control TabStrip

hDlgWidth = rc.right - rc.left;
hDlgHeight = rc.bottom - rc.top;

tabgWidth = rc2.right - rc2.left;
tabHeight = rc2.bottom - rc2.top;
MoveWindow(Tab, 2, 81, (hDlgWidth -10),(hDlgHeight -115),1);
/////////////////////////////////////////////////////////
break;
}
    return FALSE;
}


bueno si, hasta aqui todo bien amedida que hiba probando cambiaba los parametro seggun fuesen necesarios, hasta que quedo todo seteado como mejor me parecia a mi, todo esto en XP, pero despues para probar otra cosa del programa lleve el .exe a Windows 7 y ahi note que al  cambiar las dimensiones del Dialog el TabStrip no se comportaba igual que en XP, de hecho el tabStrip me queda mucho mas grande que el Dialog.

¿Alguien tiene alguna idea de porque me pasa eso o que estoy haciendo mal?

Archivo.rc
Código (cpp) [Seleccionar]
100 DIALOG DISCARDABLE  0, 0, 766, 399
STYLE DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU |
    WS_THICKFRAME
FONT 8, "MS Shell Dlg"
BEGIN
    CONTROL         "Tab1",IDC_TAB1,"SysTabControl32",0x0,2,50,764,348
END

biribau

No tengo ni idea, pero has leído esto?:
http://msdn.microsoft.com/en-us/library/ms633519%28VS.85%29.aspx
El único comentario dice algo así como que en Aero(aunque sólo nos refiere a Vista) GetWindowRect da resultados engañosos en esta plataforma, también dice como solucionarlo, quizá merezca un vistazo.