اولا maximum size رو بردار بزار حالت default بمونه اون جوری اون باتون فعال میمونه
دوما شما resize event رو به این شکل overload کن :
void window::resizeEvent(QResizeEvent *event)
{
if(event->size().width()>500 && event->size().height()>300)
resize(QSize(500,300));
else if(event->size().width()>500||event->size().height()>300)
resize(event->oldSize());
}
تو این روش موقع ریسایز کردن برنامه تیک میگیره به خاطر اینه که اول پنجره ریسایز میشه بعد این event صدا زده میشه من هنوز راهی رو پیدا نکردم که بهتر باشه .
یک نکته دیگه هم هست اگر الان اون 2 تا عدد 500 و300 رو جوری بدی که ممکن نباشه برنامه هنگ می کنه پس باید یکم دقت کنی .( مثلا اگر minimum height یکی از اعضا از 300 بیشتر باشه )