以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  自定义函数为何先执行?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=51798)

--  作者:scott518
--  发布时间:2014/6/3 18:23:00
--  自定义函数为何先执行?

下面的代码是在一个打印参数设置窗口中确定按钮的代码,

 

\'---打印参数赋值给全局变量
prt_PageL = e.Form.Controls("Num_Left").Value  \'页边距
prt_PageR = e.Form.Controls("Num_Right").Value \'页边距
prt_PageT = e.Form.Controls("Num_Top").Value \'页边距
prt_PageB = e.Form.Controls("Num_Bottom").Value \'页边距
prt_Landscape = e.Form.Controls("Rad_Landscape").checked
Printer = e.Form.Controls("Comb_Printer").Value
e.Form.Close  ‘关闭窗口在运行函数前
Functions.Execute(Mtb)  ’打印报表

 

问题是执行函数打印预览时这个窗口不会关闭,必须等关闭打印预览窗口后参数设置窗口才会关闭,为什么会这样?上面红色的代码明明在函数执前关闭窗口。谢谢!


--  作者:有点甜
--  发布时间:2014/6/3 19:21:00
--  
 把这句代码放在 afterclose 事件执行 Functions.Execute(Mtb)  ’打印报表
--  作者:scott518
--  发布时间:2014/6/3 20:23:00
--  

谢谢!还是不可以。做了个简单的例子。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:打印问题.foxdb

 

 


图片点击可在新窗口打开查看此主题相关图片如下:print.gif
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2014/6/3 20:36:00
--  

 没办法,只能变通一下处理了。

 

Vars("Print_Stop") = False \'允许打印
e.Form.baseform.left = -1000
e.Form.baseform.Top = -1000
e.Form.Close
Functions.Execute("订单")