2014-04-21 92 views
0

我想隐藏窗体2从任务栏,但我不知道如何。
我知道如何隐藏的主要形式:从任务栏隐藏窗体2

application.MainFormOnTaskBar := false; 

但我怎么能隐藏任务栏窗口2?

+0

谷歌当然应该提供大量的例子......到目前为止您尝试了哪些? –

+1

默认情况下,辅助窗体不会显示在任务栏上。你怎么让Form2出现在第一位? –

+0

将MainFormOnTaskBar设置为false只是将应用程序窗口放在任务栏中。你仍然会得到一个任务栏按钮。你真正想要做的是创建一个隐藏的顶级窗口,并使其成为主窗体的所有者。 sscce会有所帮助。 –

回答

1

在下文中,通过所有权,我指的是Windows concept而不是德尔福概念。

无主顶层窗口在任务栏上有按钮。通过将MainFormOnTaskbar设置为False,您可以使主窗体归属于应用程序窗口。并且任务栏按钮与应用程序窗口关联。您通过隐藏应用程序窗口来隐藏该按钮。

如果辅助表单在任务栏上有一个按钮,它可能没有所有者。这种情况在默认情况下不会发生,所以假设您在CreateParams中将WndParent设置为0。或使用PopupParent来实现相同。

由于拥有的窗口不显示在任务栏上,并且由于看起来您不希望辅助表单被主窗体所拥有,因此您似乎需要将辅助窗体归为应用程序窗口。

即使我上面的猜测是关闭的,事实仍然是,让窗口保持任务栏按钮的方法是让它成为所有者。