Button verschieben
-
hi
ich habe folgendes problem:habe einen dialog, der beim drücken eines bestimmten buttons vergrößert wird
nun sollte auch der ok button im dialog verschoben werden zum unteren randhab das ganze so implementiert:
CRect buttonrect;
GetWindowRect(&dlgrect);
dlgrect.bottom+=LARGE_SMALL_DIFFERENCE;
MoveWindow(&dlgrect,true);m_ButtonOK.GetWindowRect(&buttonrect);
buttonrect.top+=LARGE_SMALL_DIFFERENCE;
buttonrect.bottom+=LARGE_SMALL_DIFFERENCE;
m_ButtonOK.MoveWindow(&buttonrect,true);der dialog wird vergrößert nur der button verschwindet ganz (auch wenn man ihn z.b. nur um 1 pixel verschiebt, ist er nicht mehr sichtbar)
-
Versuch es mal mit
GetDlgItem(IDC_BUTTON)->SetWindowPos(...);
Das müsste funktionieren.
-
MoveWindow verlangt die Koordinaten, die Dein Button innerhalb seines Parents hat. Mit GetWindowRect holst Du Dir die Koordinaten des Screens, diese müssen also mit ScreenToClient noch auf Dialogkoordinaten umgerechnet werden!