Foxtable(狐表)用户栏目专家坐堂 → 打印问题求教?


  共有1631人关注过本帖树形打印复制链接

主题:打印问题求教?

帅哥哟,离线,有人找我吗?
lisheng1971
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
打印问题求教?  发帖心情 Post By:2018/11/13 11:08:00 [只看该作者]

有窗口A、B、C等,窗口中分别有表A、B、C等,每个表都有相应的输出EXCEL模板,我在菜单栏里建一个“打印”按钮、一个“预览”按钮,是否可以实现当前窗口是A时,就按照设置好的EXCEL模板“打印”或“预览”A表;当前窗口是B时,就按照设置好的EXCEL模板“打印”或“预览”B表;当前窗口是C时,就按照设置好的EXCEL模板“打印”或“预览”C表?

 回到顶部
帅哥哟,离线,有人找我吗?
lisheng1971
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By:2018/11/13 11:12:00 [只看该作者]

用FOXTABLE菜单中自带的打印、预览按钮,只能在表状态下有用,在窗口中不起作用,而且不能设置好的EXECL模板


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/13 11:19:00 [只看该作者]

在你菜单那里,执行下面代码,判断是哪个窗口,如

 

If forms.activeform Is Nothing Then
   
    msgbox("没有窗口")
   
Else
   
    Dim frm = forms.activeform
   
    msgbox(frm.name)
   
End If


 回到顶部
帅哥哟,离线,有人找我吗?
lisheng1971
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By:2018/11/13 11:34:00 [只看该作者]

谢谢版主!可以打印,但好象我设置好的相应EXCEL模板没起作用,这个该怎么整合进去?

比如原窗口中的这段“打印”按钮代码,是不是直接复制进去就行?

Dim Book As New XLS.Book(ProjectPath & "Attachments\报名登记.xls")
Dim fl As String = ProjectPath & "360云盘\鉴定文件\报名登记表.xls"
Book.Build()
Book.Save(fl)
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
App.Visible = True
Ws.PrintPreview
App.Quit


 回到顶部
帅哥哟,离线,有人找我吗?
lisheng1971
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By:2018/11/13 11:43:00 [只看该作者]

我描述有误,是在确认是当前页面后,不能在弹出的找印页面中点“确定”,而是要点“取消”,然后在弹出的EXCEL中点找印才行

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/13 12:19:00 [只看该作者]

以下是引用lisheng1971在2018/11/13 11:43:00的发言:
我描述有误,是在确认是当前页面后,不能在弹出的找印页面中点“确定”,而是要点“取消”,然后在弹出的EXCEL中点找印才行

 

没看懂你的意思,贴出你写的全部代码,以及你遇到的问题。


 回到顶部
帅哥哟,离线,有人找我吗?
lisheng1971
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:219 积分:1687 威望:0 精华:0 注册:2016/4/14 9:45:00
  发帖心情 Post By:2018/11/13 12:53:00 [只看该作者]


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

 

就是占了菜单栏里的“打印”按钮后,会弹出上述打印界面,但不能点“确定”,而是要点“取消”,然后会出现下面的界面,再点其中的“打印”才是我想要的结果

 

 


图片点击可在新窗口打开查看此主题相关图片如下:1542084618(1).png
图片点击可在新窗口打开查看

 

我想要的是:点“打印”,然后直接出现第2张图中的打印界面

“打印”按钮click事件代码如下:

If forms.activeform Is Nothing Then
    msgbox("没有窗口")
Else
    Dim frm = forms.activeform
    msgbox(frm.name)
End If
If CurrentTable IsNot Nothing Then
   CurrentTable.Print(False, True)
End If
Dim Book As New XLS.Book(ProjectPath & "Attachments\报名登记.xls")
Dim fl As String = ProjectPath & "360云盘\鉴定文件\报名登记表.xls"
Book.Build()
Book.Save(fl)
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
App.Visible = True
Ws.PrintPreview
App.Quit


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/13 14:37:00 [只看该作者]

改成这样

 

If forms.activeform Is Nothing Then
    msgbox("没有窗口")
Else
    Dim frm = forms.activeform
    msgbox(frm.name)
    If frm.name = "窗口1" Then
        msgbox(2)
        'If CurrentTable IsNot Nothing Then
            'CurrentTable.Print(False, True)
        'End If
        Dim Book As New XLS.Book(ProjectPath & "Attachments\报名登记.xls")
        Dim fl As String = ProjectPath & "360云盘\鉴定文件\报名登记表.xls"
        Book.Build()
        Book.Save(fl)
        Dim App As New MSExcel.Application
        Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
        Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
        App.Visible = True
        Ws.PrintPreview
        App.Quit
    End If
End If


 回到顶部