窗口间变量的传递与访问 在frm-xx.showmodal后,我在frm-xx里定义了一个全局变量,我想在其他窗口中访问这个变量,不过好象一旦按下mrok后,好象这个窗口就被free掉了,出现访问错误了,我换成show的话,然后hide 就可以访问。不过我要的是showmodal这种效果啊,该怎么解决呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在一个单独的unit文件中定义全局变量,然后分别在Form1和form2中引用该文件就行了。 1我这个变量是要在frm-xx中产生的,不能放在一个单独的unit文件中2如果这个变量的值在form1中改变了,在form2中还引用这个unit文件吗(本问题与原来的问题无关) 在主窗体中引用该Unit不就行了。 没有理由的,检查一下是不是调用了frm-xx.free,或者在frm-xx的OnClose里面写了Action=cafree. 呵呵;不会有你这种情况吧;你看一看,你是不是tryfinally free了;还是onclose...你这个窗口是动态建立的还是在程序初始化时建立的? 建议这样写MainForm.DoXXX;begin frm-xx.Create; try frm-xx.DoSomething(Parm); finally frm-xx.Free; end;end;frm-xx.DoSomething(var Parm :YourParmType);begin InitYourParm; if ShowModal = mrOK then begin ProcYourParm; end; ...end;让全局变量见鬼去吧。 .dcu,.mskn,.dpk这些都是什么文件啊? 为什么此命令在win xp环境下出错? 请问线程函数带参数应该怎样写 散分!推荐一些好的IT公司(北京),要找工作了 紧急求救,关于线程里面的canvas.draw的问题 开发好的应用,为什莫在分发后不能运行? 谁用过IntraWeb做开发? 谈点体会吧,,,,, win2000+sql的两台机子之间实时备份问题??? 请问现在程序员的学历很重要吗? 给分的问题 构造sql生成器组件 Com 高手请进:如何实现方法(和属性)的“重载”?(可加分)
2如果这个变量的值在form1中改变了,在form2中还引用这个unit文件吗
(本问题与原来的问题无关)
OnClose里面写了Action=cafree.
不会有你这种情况吧;
你看一看,你是不是
try
finally
free了;
还是onclose...你这个窗口是动态建立的还是在程序初始化时建立的?
begin
frm-xx.Create;
try
frm-xx.DoSomething(Parm);
finally
frm-xx.Free;
end;
end;
frm-xx.DoSomething(var Parm :YourParmType);
begin
InitYourParm;
if ShowModal = mrOK then
begin
ProcYourParm;
end;
...
end;让全局变量见鬼去吧。