Gegenteil von GetClientRect?



  • Ich möchte das Resizen meines Dialogs limitieren und wenn er unter z.B. 500x350 geht, dann soll er wieder auf 500x350 forciert werden. Aber wie gehts? Es gibt scheinbar kein SetClientRect()...


  • Mod

    Nein es gibt MoveWindow oder SetWindowPos um die Größe zu setzen. Einfacher ist es jedoch WM_GETMINMAXINFO zu verwenden und einfach dem Fenster nicht zu erlauben kleiner zu werden.



  • MoveWindow führt bei mir zu einer Exception:

    if ((rect_mainDialog.right<500)||(rect_mainDialog.bottom<360))
    {
    	CRect defaultRect(0,0,500,360);
    	GetDlgItem(IDD_MY_DIALOG)->MoveWindow(0,0,500,360);
    }
    

    Hoffentlich hab ich da keinen peinlichen Fehler drin 😉 Ich schau mal was dieses WM_GETMINMAXINFO macht.


  • Mod

    GetDlgItem ist an dieser Stelle Quatsch. Den Dein Dialog ist kein Child Control in Deinem Dialog!



  • Hmmmmm im ClassWizard gibt es kein WM_GETMINMAXINFO für den Hauptdialog. Wie füge ich es manuell hinzu?

    EDIT: Juhu, es klappt doch, wenn man es manuell hinzufügt. Wieder was gelernt 🙂


Log in to reply