访问量: 29113次,访客数: 24595人,浏览量: 1次 
首页  编辑  

MDI子窗口的显示和关闭问题

Tags: /超级猛料/VCL/Form,窗体/MDI界面窗体/   Date Created: Fri Oct 19 2007 07:57:46 GMT+0000 (Coordinated Universal Time)

MDI�Ӵ��ڵ���ʾ�͹ر�����

�����ڱ��ʱ������ʹ��MDI���ڣ���Ϊ�������ೡ��ʹ���ǵ�

�������ͳһ����ʹ��MDI����Ҳ��һЩ������ĵط������

��ע��Ҳ������ǵı�̴����鷳��������һЩҪע��ĵط���

(һ)Ҫ���㲻��MDI�Ӵ��ڴ��Զ������Ĵ����б�����ȥ������

һ���У��Ӵ��ھͻ��Զ����֡��������MDI�Ӵ��ڴ��Զ�������

�����б�����ȥ������ж�MDI�Ӵ����ѽ�������������ʾ����

һ���Ĵ����ֳ���һ�����⡣

���ر�MDI�Ӵ��ں󣬲��ܼ򵥵���if FormChild1=nil then ...

���ж����Ƿ��ѽ�������Ϊ������Free�󲢲���nil�������Ǹ�

��Ч�ĵ�ֵַ�����ǿ���������ĺ������жϣ�

function TfrmMain.IsForm(formClass : string) : boolean;

{�жϴ����Ƿ��ѽ�����fromClass�Ǵ��ڵ������ַ�����'TForm2'}

var

 i : integer;

begin

 result := False;

 for i := 0 to Application.ComponentCount -1 do

 begin

   if (Application.Components[i].ClassName = formClass) then

   begin

     result := True;

     Break;

   end;

 end;

end;

��Ȼ���������Ҳ�����жϷ�MDI���ڡ�

(��)һ��Ĵ�����Closeʱ��Ĭ�϶�����Hide����MDI�Ӵ�����Closeʱ

Ĭ����Minimize��Ϊ������һ�㴰��һ���ر���������Ӧ��MDI��

���ڵ�OnClose�¼�����������Action=caFree;ʹ�����ڴ����ͷ�

����ע�⣺�㲻����Action:=caHide���رպ�Ҫ����ʾ�ͱ�����

Createһ�β��С������������ķ����жϴ����Ƿ��ѽ�����û�о�

�Ƚ������ѽ�����ֱ��show��

(��)������������ڵ����˵��ϼ�һ�������ڡ��˵����Ϊ������

�������ô��ڲ��������Ӳ˵����������ڵ�WindowMenu����Ϊ�����ڡ�

�˵�������һ��MDI�Ӵ���ʱ�������ڡ��˵���������һ����

�Ӵ��ڱ����������Ӳ˵������ҵ�ǰ���ڶ�Ӧ�IJ˵�ǰ��һ����ǡ�

ѡ��˵����Խ���Ӧ�Ĵ��ڵ�����ǰ�������ܷ���ɣ�����һ��Ҫע��

�����ڡ��˵��������ʱ����Ҫ��һ���Ӳ˵������Ͳ�������������