我在MDI子窗体的起始位置遇到这个奇怪的问题。 这是我的起始位置代码,我希望它是中间的左边 MDI父母表格。
//show the task bar
ChildForm c1 = new ChildForm();
c1.MdiParent = this;
c1.StartPosition = FormStartPosition.Manual;
c1.Location = new Point(0, this.Height/2);
奇怪的是每次我启动我的Mdi父窗体时,垂直滚动条都会显示出来 并且mdi子表单的位置低于MDI父表单高度的一半。 然后,如果我向下滚动滚动条以查看整个mdi子窗体,滚动条就会消失。
在此之后,无论我如何更改mdi父窗体的大小,滚动条都会 不再出现了。
有人知道为什么吗?
另外,我想知道是否可以隐藏一个mdi子窗体,只剩下一个类似句柄的控件 在mdi父表格中。如果用户单击该句柄,则表单将再次显示。如果是用户 点击其他地方,表单隐藏。它有点像Window任务栏。
我尝试使用form.hide(),但它隐藏了整个mdi子窗体。
由于
亚历
答案 0 :(得分:3)
您的计算可能会考虑到顶部的窗口栏。
答案 1 :(得分:1)
你应该像这样最小化儿童形状的高度和宽度
c1.Location = new Point(0, (this.Height - c1.Height)/2);