如何让表单显示在Delphi的任务栏上? 例如,在Firefox中,当您在新窗口中打开页面时,它会在任务栏上创build另一个窗口,而不会创build新的过程。 目前我的Delphi应用程序在单击button时打开一个新窗体,但任务栏上仍然只有一个东西,所以当button被创build时,您不能在主窗体和创build窗体之间进行alt-tab点击。 如何更改它,使新窗体出现一个新的任务栏button? 我目前的代码如下所示:
procedure Form1ButtonClick(Sender: TObject); begin Form2.Show; end;
我一直在搞CreateWindowEx
,但理想情况下,我想find一个比直接使用Windows API更简单的解决scheme。
如果我明白你想要什么,你可以通过覆盖它的CreateParams过程在任务栏上显示你的辅助表单,如独立于主要表单 delphi.about.com文章的最小化子表单所示,如下所示:
interface type TMyForm = class(TForm) ... protected procedure CreateParams(var Params: TCreateParams) ; override; ... implementation procedure TMyForm.CreateParams(var Params: TCreateParams) ; begin inherited; Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW; Params.WndParent := 0; end;
如果不使用这一行更好的形式顺序:
Params.WndParent := 0;