以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]请教一下  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=111751)

--  作者:5159518
--  发布时间:2017/12/28 16:15:00
--  [求助]请教一下
引用了dll,有一个函数不会用,请老师指点

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

现在代码是:
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter= "PDF文件|*.pdf" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1") \'声明页面集合
    Dim pdf As new AxFoxitReaderSDKProLib.AxFoxitReaderSDK \'声明PDF的SDK
    pdf.Dock =  System.Windows.Forms.DockStyle.Fill \'定义打开的PDF文件填充范围为页面集合区域)

    \'pdf.ShowTitleBar(False) 这行代码应该怎么写?
    Dim finfo As new FileInfo(dlg.FileName) \'声明打开文件的"路径+文件名"
    Dim name = finfo.Name.Replace(finfo.Extension, "") \'声明打开文件的文件名
    tab.TabPages.Add(name, name) \'添加页面集合的页面,并将页面名称及页面标题定义为其打开的文件名
    Dim pb = tab.BaseControl
    PB.TabPages(name).Controls.add(pdf)
    tab.SelectedPage = tab.TabPages(name)
    pdf.openfile(dlg.FileName,"")
    For i As Integer = 0 To tab.TabPages.count - 1
        If tab.TabPages(i).name = "Page1" Then
            tab.tabpages.Delete("Page1")
            Exit For
        End If
    Next
End If

--  作者:有点甜
--  发布时间:2017/12/28 16:35:00
--  

代码没问题,报什么错?你写到最后有没问题?


--  作者:5159518
--  发布时间:2017/12/29 11:19:00
--  
以下是引用有点甜在2017/12/28 16:35:00的发言:

代码没问题,报什么错?你写到最后有没问题?


运行的时候报错,别的都没有发现问题

测试项目很简单,一个窗口,里面有一个页面集合,一个按钮编写了一楼的代码,预览的时候出现如下报错,不清楚怎么回事?还请老师指点


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

[此贴子已经被作者于2017/12/29 11:19:54编辑过]

--  作者:有点甜
--  发布时间:2017/12/29 11:58:00
--  

这样处理一下即可,如

 

CType(pdf,System.ComponentModel.ISupportInitialize).BeginInit()

\'设置的代码,如

pdf.ShowTitleBar(False)


CType(pdf,System.ComponentModel.ISupportInitialize).EndInit()


--  作者:5159518
--  发布时间:2017/12/29 12:53:00
--  
以下是引用有点甜在2017/12/29 11:58:00的发言:

这样处理一下即可,如

 

CType(pdf,System.ComponentModel.ISupportInitialize).BeginInit()

\'设置的代码,如

pdf.ShowTitleBar(False)


CType(pdf,System.ComponentModel.ISupportInitialize).EndInit()





修改后的代码:

Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog

dlg.Filter= "PDF文件|*.pdf" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮

    Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1") \'声明页面集合

    Dim pdf As new AxFoxitReaderSDKProLib.AxFoxitReaderSDK \'声明PDF的SDK

    pdf.Dock =  System.Windows.Forms.DockStyle.Fill \'定义打开的PDF文件填充范围为页面集合区域)

    

    CType(pdf,System.ComponentModel.ISupportInitialize).BeginInit()

    pdf.ShowTitleBar(False)    

    CType(pdf,System.ComponentModel.ISupportInitialize).EndInit()

    

    \'pdf.ShowTitleBar(False)

    Dim finfo As new FileInfo(dlg.FileName) \'声明打开文件的"路径+文件名"

    Dim name = finfo.Name.Replace(finfo.Extension, "") \'声明打开文件的文件名

    tab.TabPages.Add(name, name) \'添加页面集合的页面,并将页面名称及页面标题定义为其打开的文件名

    Dim pb = tab.BaseControl

    PB.TabPages(name).Controls.add(pdf)

    tab.SelectedPage = tab.TabPages(name)

    pdf.openfile(dlg.FileName,"")

    For i As Integer = 0 To tab.TabPages.count - 1

        If tab.TabPages(i).name = "Page1" Then

            tab.tabpages.Delete("Page1")

            Exit For

        End If

    Next

End If



预览结果依然报错,错误描述和3楼一样


--  作者:5159518
--  发布时间:2017/12/29 12:56:00
--  
原来的文件是.ocx文件,转换成dll文件,手工注册的时候发现无法注册,但是ocx文件可以注册,不知道和这个有没有关系?
--  作者:5159518
--  发布时间:2017/12/29 13:03:00
--  
老师看看有什么办法帮我转成dll文件我再试试看,我是用论坛里的那个工具转换的,也不知道是不是转换的时候出了问题
--  作者:5159518
--  发布时间:2017/12/29 13:06:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:foxitreader_ax_pro.part2.rar

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


--  作者:有点甜
--  发布时间:2017/12/29 14:50:00
--  

写到最后

 

Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog

dlg.Filter= "PDF文件|*.pdf" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
   
    Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1") \'声明页面集合
    Dim pdf As new AxFoxitReaderSDKProLib.AxFoxitReaderSDK \'声明PDF的SDK
    pdf.Dock =  System.Windows.Forms.DockStyle.Fill \'定义打开的PDF文件填充范围为页面集合区域)
   
    Dim finfo As new FileInfo(dlg.FileName) \'声明打开文件的"路径+文件名"
   
    Dim name = finfo.Name.Replace(finfo.Extension, "") \'声明打开文件的文件名
   
    tab.TabPages.Add(name, name) \'添加页面集合的页面,并将页面名称及页面标题定义为其打开的文件名
   
    Dim pb = tab.BaseControl
   
    PB.TabPages(name).Controls.add(pdf)
   
    tab.SelectedPage = tab.TabPages(name)
   
    pdf.openfile(dlg.FileName,"")
    pdf.ShowTitleBar(False)
End If


--  作者:5159518
--  发布时间:2017/12/29 15:47:00
--  
太感谢啦,呵呵,测试有效哈