怎么样表单form1中判断form2是否已经生成了? 怎么样表单form1中判断form2是否已经生成了? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MDIFORM的话可以用ChildIsOpen函数 在FORM1的PAS文件中USES FORM2如果FORM2不为NIL既已经存在 var form2:Tform2;begin if Assigned(form2) then showmessage('form2已经创建') else showmessage('form2没有创建');end; if Form1<>nil then ... senfore:你说的方法不行呀,我试了,返回的都是真值,不管FORM2是否建立都返回真值呀.我没有用MDIFORM,是普通的FORM. 我晕。。你的from2是不是自动创建了??? 我没有自动创建,但是FORM1的FORM2都是有FRMBASE的一基类表单继承下来,不知道是不是这个原因撤. 那你是不是创建过Form2了,然后又是放掉了吧。你把释放Form2的地方改成FreeAndNil(Form2)应该就没问题了 没有呀,我在FORM1的按中中写了如下的代码:var form2:tform2;begin if assigned(form2) then form2:=tform2.create(application); form2.show;end; 把Var form2 : tform2去掉你引用Unit2,就是Form2对应的单元即可begin if assigned(form2) then form2:=tform2.create(application); form2.show;end; 是不是From2已经在工程文件里被创建了,我也是新手,希望大家指教。begin Application.Initialize; Application.CreateForm(TForm1, From1); Application.CreateForm(TForm2, From2); Application.Run;end. Var form2 : tform2去掉我前面没有说清楚。。这行不要放在过程或者函数里。。你要声明的单元内唯一变量。。所以你应该将这一行放到implement之后。。所以过程或者函数之前。这样的话form2就在本单元内有效了。。那么你就可以使用 Assigned(form2) 这样的函数来判断form2是否被创建了。。,你要保证你所有创建Tform2都是使用form2来创建否则如果你同单元内声明了其它名字的Tform2实例。。或者你在函数或者过程里再次声明了form2,那么Assigned(form2)就不太管用了。。那么你就需要判断窗体的本身类型了。就是你需要判断所有已经创建的窗体里到底哪些是Tform2类型而不能通过实例名称form2来判断了。 江苏人民发来慰问:祝坚守在D版的广大战友身体健康 节日快乐! 为什么ADO时不时就连不到SQL服务器 读取combobox中左1位的数据 急!!!lenth命令忘了,马上加 query提交的更新如何commit? 高分求解数据库问题,一表对多表的问题。敬请大家赐教!!(200分哟) 我们的目标-程序员的四大理想 做一名程序员需要什么样的素质 真的很失望,难道就没有一个人知道的(如何在录音的同时取出输入音量的大小,有个数字就行) 我想用程序调整计算机的时间(屏幕右下脚显示的时间),谁能提供给我函数? 呵呵,又很久没来了。谁现在失业??? 急!调用WebService问题?参数是数组的?
如果FORM2不为NIL既已经存在
form2:Tform2;
begin
if Assigned(form2) then
showmessage('form2已经创建')
else
showmessage('form2没有创建');end;
...
应该就没问题了
begin
if assigned(form2) then
form2:=tform2.create(application);
form2.show;end;
你引用Unit2,就是Form2对应的单元即可
begin
if assigned(form2) then
form2:=tform2.create(application);
form2.show;
end;
我也是新手,希望大家指教。
begin
Application.Initialize;
Application.CreateForm(TForm1, From1);
Application.CreateForm(TForm2, From2);
Application.Run;
end.
Assigned(form2) 这样的函数来判断form2是否被创建了。。,你要保证你所有创建Tform2都是使用form2来创建否则如果你同单元内声明了其它名字的Tform2实例。。或者你在函数或者过程里再次声明了form2,那么Assigned(form2)就不太管用了。。那么你就需要判断窗体的本身类型了。就是你需要判断所有已经创建的窗体里到底哪些是Tform2类型而不能通过实例名称form2来判断了。