以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]请教一下 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=111751) |
||||||||
-- 作者:5159518 -- 发布时间:2017/12/28 16:15:00 -- [求助]请教一下 引用了dll,有一个函数不会用,请老师指点 现在代码是:
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的发言:
代码没问题,报什么错?你写到最后有没问题? 运行的时候报错,别的都没有发现问题 测试项目很简单,一个窗口,里面有一个页面集合,一个按钮编写了一楼的代码,预览的时候出现如下报错,不清楚怎么回事?还请老师指点 [此贴子已经被作者于2017/12/29 11:19:54编辑过]
|
||||||||
-- 作者:有点甜 -- 发布时间:2017/12/29 11:58:00 -- 这样处理一下即可,如
CType(pdf,System.ComponentModel.ISupportInitialize).BeginInit() \'设置的代码,如 pdf.ShowTitleBar(False)
|
||||||||
-- 作者:5159518 -- 发布时间:2017/12/29 12:53:00 -- 以下是引用有点甜在2017/12/29 11:58:00的发言:
这样处理一下即可,如
CType(pdf,System.ComponentModel.ISupportInitialize).BeginInit() \'设置的代码,如 pdf.ShowTitleBar(False)
修改后的代码: 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 --
|
||||||||
-- 作者:有点甜 -- 发布时间:2017/12/29 14:50:00 -- 写到最后
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog dlg.Filter= "PDF文件|*.pdf" \'设置筛选器 If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 |
||||||||
-- 作者:5159518 -- 发布时间:2017/12/29 15:47:00 -- 太感谢啦,呵呵,测试有效哈 |