2013-10-15 36 views
0

我在Visual C++中創建了我的第一個應用程序,對於我的生活我無法想象當窗口最大化時groupbox自動居中。現在分組框只會左對齊。我會如何居中?Center Group Box

回答

1

Windows不支持控件的自動調整大小/居中/對齊等。您需要爲對話框/窗口添加WM_SIZE處理程序,並在父客戶端區域更改時手動重新定位控件。

+0

@ Jonathan Potter,感謝您的提供。我是新來的Visual C++,所以我必須閱讀'WM_SIZE'和它的功能。 – Mike

0

注:我假設您使用的是Visual C++ Windows窗體應用程序。

您必須通過調整控件的左側屬性和頂部屬性來手動對齊它。您可以覆蓋表單的Resize事件,以便在處理表單大小時觸發。然後,您可以使用窗體的寬度和高度將控件定位在中心位置:

void myForm_Resize(System::Object^ sender, System::EventArgs^ e) 
{ 
    myControl->Left = (myForm->Width - myControl->Width)/2; 
    myControl->Top = (myForm->Height - myControl->Height)/2; 
} 
+0

@ ruslander,我嘗試了你的建議,但是它出現了一些錯誤。我會編寫代碼,看看我能否得到它的工作,然後回來。 – Mike

+0

隨意發佈一些錯誤/例外,我可以嘗試幫助診斷。 – pineconesundae