2

我有一个MDI-Parent表单名称frmMain,我在其中加载了很多子表单。

frmMain在顶部有一个菜单,它覆盖了大约 1000*25 的空间。当子窗体加载时,它们可以出生在frmMain的任何位置,有时它们会在菜单后面。

有没有办法让frmMain认为不应使用此菜单下的空间(类似于表单区域)?或者我应该明确告诉子表格位于下方height=25

在此处输入图像描述

蓝色部分是菜单,在其上方,红色部分是面板。

4

2 回答 2

2

我不知道这对您是否方便,但您可以Panel/FlowLayoutPanel在所需的子表单空间中添加一个到您的 Mdi 窗口,然后将表单添加到面板中,如下所示:

Form frm = New Form();
frm.TopLevel = False;
frm.Show();
FlowLayoutPanel1.Controls.Add(frm);

设置FlowLayoutPanel.BackColorTransparent使它看起来像一个 mdi 容器。

于 2013-02-03T15:17:28.620 回答
0

我认为没有办法做到这一点,您必须务实地为每个表单设置位置或将它们的start up位置设置为。center parent或者简单地使用Child.ShowDialog()而不是使用Child.Show(),显示对话框子窗口聚焦直到关闭。

于 2013-02-03T14:55:44.090 回答