很头痛的Delphi技术问题???(50分)

  • 主题发起人 主题发起人 ajian320
  • 开始时间 开始时间
A

ajian320

Unregistered / Unconfirmed
GUEST, unregistred user!
我在程序中打开了很多窗体,这些窗体都是一层一层地打开的。比如: Form1中打开Form2,Form2中打开From3,.....。最后我想弄一个定时器,在指定的时间到达时,自动关闭所有打开的窗体(不包括主窗体),恢复到主窗体界面。请问怎么实现?(不用在每个窗本中都放置一个定时器)
 
打开记录这些窗口的句柄,
降序循环downto
SENDMESSAGE(记录的Handle,WM_CLOSE,0,0);
应该可以的。
 
var
i:integer;
begin
for i:=0 to Screen.FormCount-1 do
if Screen.Forms.Name<>'主窗體名' then
Screen.Forms.Close;
end;
 
主窗体放timer,用001zqk的程序很简单实现的
 
但我每个窗体的Name都不一样的嘛,这样循环不行呀!!!
 
if Screen.Forms.Name<>'主窗體名' then
晕,人家都告诉你了,只要记住主窗体的名称就行了,其他的名称不用管,只要不等于主窗体的 Name就行了。
 
后退
顶部