I Iknow Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-23 #2 是自己程序的?只要看看这个窗体的实例是否存在就是了。 FindWindow应该也可以的。
程 程云 Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-23 #3 就是这样了, with tform(Formname) do begin ........ end;
S szwgl Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #4 我发现可以按照两位仁兄这样实现,但是没有解决我的问题, 我实际的问题是这样 form1,form2 在form1中create form2,操作完成以后, 在form1中保存填写在FORM2上面的数据, 这时,如果FORM2 CLOSE 了,form1就 不能保存form2上面的数据了,我不希望 用户把我做的窗口拖来拖去的,我使用 了摸态,但是如果我hide了form2,结果 程序就死了,因为,我无法控制程序了! 多谢各位捧场!
我发现可以按照两位仁兄这样实现,但是没有解决我的问题, 我实际的问题是这样 form1,form2 在form1中create form2,操作完成以后, 在form1中保存填写在FORM2上面的数据, 这时,如果FORM2 CLOSE 了,form1就 不能保存form2上面的数据了,我不希望 用户把我做的窗口拖来拖去的,我使用 了摸态,但是如果我hide了form2,结果 程序就死了,因为,我无法控制程序了! 多谢各位捧场!
D daiqingbo Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #5 利用form的showmodal返回值,根据返回值,执行相应的动作。 如: if form2.showmodal=mrok then .... else ... 用户直接关掉form2,返回mrcancel,把你需要的按钮的modalresult设为mrok,以上就可 正确执行。或者干脆不允许用户关form2,设一个cancel button,modalresult为mrcancel。
利用form的showmodal返回值,根据返回值,执行相应的动作。 如: if form2.showmodal=mrok then .... else ... 用户直接关掉form2,返回mrcancel,把你需要的按钮的modalresult设为mrok,以上就可 正确执行。或者干脆不允许用户关form2,设一个cancel button,modalresult为mrcancel。
S snake Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #6 用assigned函数可以知道是否存在该实例。 form.close并没有释放掉,只是hide而已
李 李崇文 Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #7 >判断窗体是否存在: if Assigned(Form2) then begin 操作数据Form2 end 或 if Form2<>nil then begin 操作数据Form2 end >防止程序死掉,便用模态窗体 你可以拦截窗体移动消息,同样也可以防止人家拖动你的窗体
>判断窗体是否存在: if Assigned(Form2) then begin 操作数据Form2 end 或 if Form2<>nil then begin 操作数据Form2 end >防止程序死掉,便用模态窗体 你可以拦截窗体移动消息,同样也可以防止人家拖动你的窗体
S szwgl Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #8 我在说一遍:问题是这样 在form1中(form1是模态运行): tform1.btnaddclick(senderbject) begin applications.createform(tform2,form2); form2.showmodal; end; form2中 tform2.btnCancelClick(senderbject); begin form2.hide; end; 这时问题出现了, 我控制不了我的程序了,因为form2时模态创建的,焦点在他上面,而他 有被隐藏了!我该怎么办呢?天阿~!! 谢谢:daiqingbo,iknow,snake,程云,李崇文(我大学你有个同学,叫李崇春,你是 他吗?)
我在说一遍:问题是这样 在form1中(form1是模态运行): tform1.btnaddclick(senderbject) begin applications.createform(tform2,form2); form2.showmodal; end; form2中 tform2.btnCancelClick(senderbject); begin form2.hide; end; 这时问题出现了, 我控制不了我的程序了,因为form2时模态创建的,焦点在他上面,而他 有被隐藏了!我该怎么办呢?天阿~!! 谢谢:daiqingbo,iknow,snake,程云,李崇文(我大学你有个同学,叫李崇春,你是 他吗?)
B BaKuBaKu Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #10 Cancel 按钮为什么要执行 Hide , Close 不是很好吗?用 Close 一切 OK 。 请给我一个要用 Hide 的理由。
程 程云 Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-24 #11 Form如果只是Close了, 并没有删除内存中这个实例, 只是给隐藏,起来了, 可以真接访问, 只要在OnClose事件中写上" Action:= caFree;"这类语句。
J JohnsonGuo Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-30 #12 在FormClose中写 Action := caHide; ModalResult := mrCancel; 就不会把表单关闭了,只要程序没有退出,都可以直接访问Form2的数据的说。