在公用global.pas中有个公用的过程,用来建立一个新窗口
procedure G_OpenNew();
begin
Form1:=Tform1.Create(nil);
try
form1.ShowModal;
finally
form1.Free;
form1:=nil;
end;
end;//在建立N个Form1后请问如何识别它们,也就是说我想给其中的某个form1赋值?
//同时我发觉关闭其中一个后,其它的form1都可能已经释放了,如果再访问其它的form1就出现地址错误。。请问如何建立多个同名的form并且分别识别他们?
procedure G_OpenNew();
begin
Form1:=Tform1.Create(nil);
try
form1.ShowModal;
finally
form1.Free;
form1:=nil;
end;
end;//在建立N个Form1后请问如何识别它们,也就是说我想给其中的某个form1赋值?
//同时我发觉关闭其中一个后,其它的form1都可能已经释放了,如果再访问其它的form1就出现地址错误。。请问如何建立多个同名的form并且分别识别他们?
解决方案 »
- 为什么这三行代码不起作用?
- 如何用dephi做一个直接把gdb文件转换成mdb文件
- 谁能提供一个DELPHI用ADO和SQL2000之间操作的电子教程吗?
- 小弟通过了第一轮面试,明天要第二轮笔试,但是实在不知道DELPHI能笔试什么?
- DBGridEh或其他类似的控件,能不能实现对数据的分组,并能对分组进行小计,怎样实现???
- 问一个关于cxGrid控件的问题
- 关于websnap中的如何用adoquery进行查询的问题。希望各位帮忙。
- 求助FM里面有没有类似vcl的DBGrid组件
- help me 小弟是新手
- 菜鸟问题 :请问用TQuery怎样插入Identity类型的数据?
- 请问杭州的朋友,进来接分!
- 数据操作
ListBox1.Items.Add(Screen.Forms[i].Name);
//把所有窗体给加加进去.
procedure G_OpenNew();
var
form1:Tform1;
begin
Form1:=Tform1.Create(nil);
try
form1.ShowModal;
finally
form1.Free;
form1:=nil;
end;
end;
for i:=0 to Screen.FormCount-1 do
ListBox1.Items.Add(Screen.Forms[i].Name);
可以遍历窗口,但不是太好。
最好使用一个TList类来维护窗口列表。