以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于打印预览的问题?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81897)

--  作者:jswjyjf
--  发布时间:2016/3/8 14:06:00
--  关于打印预览的问题?
在win7中 点了打印预览 那个预览窗口会移动到任务栏里去了 ,要再次点一下 才到桌面上,怎么样才能直接显示在桌面上
--  作者:大红袍
--  发布时间:2016/3/8 14:14:00
--  

看看这里

 

http://www.foxtable.com/help/topics/2713.htm

 

ShowAppWindow("打印预览",2)


--  作者:jswjyjf
--  发布时间:2016/3/8 14:43:00
--  
xp 下就没有这个问题


--  作者:大红袍
--  发布时间:2016/3/8 14:44:00
--  
我win8也没这个问题。win7也不应该有。如果有,那就切换一下焦点窗口,如2楼。
--  作者:jswjyjf
--  发布时间:2016/3/8 14:46:00
--  
打印预览的代码是这样的 
Dim Book As New XLS.Book(ProjectPath & "Attachments\\付款单.xls")
Dim fl As String = ProjectPath & "Reports\\付款单.xls"
Book.Build()
Book.Save(fl)
Dim App As New MSExcel.Application
App.Visible = False
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
App.Visible = True
Ws.PrintPreview
App.Quit

--  作者:大红袍
--  发布时间:2016/3/8 14:52:00
--  

改一下

 

App.Visible = True
ShowAppWindow("付款单.xls",2)
Ws.PrintPreview


--  作者:jswjyjf
--  发布时间:2016/3/8 16:21:00
--  
还是 不行 


--  作者:大红袍
--  发布时间:2016/3/8 16:37:00
--  

试试这样,再不行,做个实例瞧瞧

 

Dim App As New MSExcel.Application
App.Visible = False
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("d:\\test.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
App.Visible = True
Do until ShowAppWindow("test.xls",2)
    Application.DoEvents
Loop
Ws.PrintPreview
App.Quit