失败失败,竟然连这个都看错了,都是同种字体的错。 begin ////////////此部分是在程序或DLL初始化时的操作 end. 我想阁下一定是DLL也隐式调用,所以首次调用ShowFormCreate时,程序先初始化Dll,此时会调用一次ShowFormCreate,再由程序显式调用ShowFormCreate,所以就两次显示Form了,要不,做个测试,显式调入Dll,不作任何操作,此时会ShowForm一次,再调函数又会Show一次;同理,你说的第二次不会Show两个Form的原因是:Dll已载入,不会执行Begin---end.中的ShowForm,所以只一个了。(唉,两个指头打字真累)
{Application.Initialize;
Application.CreateForm(TPic_Form, Pic_Form);
Application.Run; }
{}中的部分不会执行的
当第二次执行时,就不会出现这种情况,是不是调用DLL时有什么事情发生?
然后调用ShowFormCreate时又创建了一个.
将Project的Option中,窗体Pic_Form自动创建去掉试试
begin
////////////此部分是在程序或DLL初始化时的操作
end.
我想阁下一定是DLL也隐式调用,所以首次调用ShowFormCreate时,程序先初始化Dll,此时会调用一次ShowFormCreate,再由程序显式调用ShowFormCreate,所以就两次显示Form了,要不,做个测试,显式调入Dll,不作任何操作,此时会ShowForm一次,再调函数又会Show一次;同理,你说的第二次不会Show两个Form的原因是:Dll已载入,不会执行Begin---end.中的ShowForm,所以只一个了。(唉,两个指头打字真累)
你所言极是,我将begin
ShowFormCreate;
{Application.Initialize;
Application.CreateForm(TPic_Form, Pic_Form);
Application.Run; }
end.中的ShowFormCreate去掉,就不再出现所说情况了。我把40分都给你吧,希望其他热心的朋友别介意,也很感谢大家!