首页  编辑  

最小化问题

Tags: /超级猛料/VCL/Form,窗体/FAQ/   Date Created:

不随主窗口最小化而最小化的窗口,如何使程序最小化到任务栏上,而不是缩小到屏幕上的某个位置:

1.在你的小窗口中重载CreateParam函数并进行处理,主要是改变小窗口的Parent

protected

 procedure CreateParams(Var Param:TCreateParams);override;

...

procedure TMiniForm.CreateParams(Var Param:TCreateParams);

begin

Inherited CreateParams(Param);

Param.wndParent := GetDesktopWindow;  //这样你的小窗口就不会跟着MainForm最小化了

end;

随主窗口最小化而最小化的窗口:

同上,不过

Param.wndParent := mainform.handle;  //这样你的小窗口就不会跟着MainForm最小化了

另外,Delphi提供了另外一个手段,不过不好用,必须用动态的方法:

Form2 := TForm2.CreateParented(H);

Form2.Show;