0

我正在用 Visual C++ 创建我的第一个应用程序,对于我的一生,我无法弄清楚当窗口最大化时让 groupbox 自动居中。现在 groupbox 只会向左对齐。我将如何居中?

4

2 回答 2

1

Windows 不支持控件的自动调整大小/居中/对齐等。您需要WM_SIZE为您的对话框/窗口添加一个处理程序,并在父客户区更改时手动重新定位控件。

于 2013-10-15T19:58:10.153 回答
0

注意:我假设您使用的是 Visual C++ Windows 窗体应用程序。

您必须通过调整控件的 Left 和 Top 属性来手动对齐它。您可以覆盖表单的 Resize 事件,以便在操作表单大小时触发。然后,您可以使用表单的宽度和高度将控件适当地放置在中心:

void myForm_Resize(System::Object^ sender, System::EventArgs^ e)
{
    myControl->Left = (myForm->Width - myControl->Width) / 2;
    myControl->Top = (myForm->Height - myControl->Height) / 2;
}
于 2013-10-15T20:00:40.880 回答