我有一个MDI-Parent
表单名称frmMain
,我在其中加载了很多子表单。
frmMain在顶部有一个菜单,它覆盖了大约 1000*25 的空间。当子窗体加载时,它们可以出生在frmMain的任何位置,有时它们会在菜单后面。
有没有办法让frmMain认为不应使用此菜单下的空间(类似于表单区域)?或者我应该明确告诉子表格位于下方height=25
?
蓝色部分是菜单,在其上方,红色部分是面板。
我不知道这对您是否方便,但您可以Panel/FlowLayoutPanel
在所需的子表单空间中添加一个到您的 Mdi 窗口,然后将表单添加到面板中,如下所示:
Form frm = New Form();
frm.TopLevel = False;
frm.Show();
FlowLayoutPanel1.Controls.Add(frm);
设置FlowLayoutPanel.BackColor
为Transparent
使它看起来像一个 mdi 容器。
我认为没有办法做到这一点,您必须务实地为每个表单设置位置或将它们的start up
位置设置为。center parent
或者简单地使用Child.ShowDialog()
而不是使用Child.Show()
,显示对话框子窗口聚焦直到关闭。