具有不同 WindowState 的多个 MDIChield 的 MDI 窗口

发布于 2024-12-03 16:17:25 字数 455 浏览 1 评论 0原文

我的 MDI 父窗口和 MDI 子窗口有一点问题。问题是我需要 3 个子窗口,但只有第一个窗口会最大化,所以我使用此代码:

UserAdmin usrWindow = new UserAdmin();
usrWindow.MdiParent = this;
usrWindow.WindowState = FormWindowState.Normal;
usrWindow.Show();

对于其他 2 个窗口,我使用此代码:

TaskAdmin tskWindow = new TaskAdmin ();
tskWindow.MdiParent = this;
tskWindow.Show();

我只需要第一个窗口最大化,但是当我打开他们也将其他打开最大化。

我该如何打开一个最大化,而其他的则以第一个的默认大小打开?

谢谢

I have a little problem with my MDI Parent Window and the MDI Childs window. The problem is that i need 3 child window but only the first it'll be maximize, so i use this code:

UserAdmin usrWindow = new UserAdmin();
usrWindow.MdiParent = this;
usrWindow.WindowState = FormWindowState.Normal;
usrWindow.Show();

For the others 2 windows i use this code:

TaskAdmin tskWindow = new TaskAdmin ();
tskWindow.MdiParent = this;
tskWindow.Show();

I only need that the first windows is maximized, but when i open the others they open maximized too.

How can i do to open one maximized and others in the default size over the first?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我偏爱纯白色 2024-12-10 16:17:25

这是不可能的,但可以通过非常非常棘手的(使用 WndProc 覆盖、自定义事件循环)和丑陋的代码来实现,这些代码不能以相同的方式在不同的操作系统中工作(即 WinXP/WinXPSP1/WinXPSP3/Vista/Win7)

That is not possible, yet can be achieved with very very tricky (using WndProc override, custom event loops) and ugly code which will not work in different operation systems in the same manner (i.e WinXP/WinXPSP1/WinXPSP3/Vista/Win7)

倦话 2024-12-10 16:17:25

在这种情况下,您的 TaskAdmin 表单不能有 MDIParent。您需要将这些表单浮动在 MDIParent 上,或者将它们放置在 MDIParent 的面板中,停靠在一侧。

Your TaskAdmin forms cannot have an MDIParent in this situation. You need to either float these forms over the MDIParent or place them in panels in the MDIParent, docked to a side.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文