VB操作网页代码Word文档下载推荐.docx
- 文档编号:20024256
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:19
- 大小:23.50KB
VB操作网页代码Word文档下载推荐.docx
《VB操作网页代码Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《VB操作网页代码Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
bodystyle="
overflow-x:
hidden;
overflow-y:
hidden"
>
即可。
其中x表示水平滚动条,将其改为y的话就可以隐藏垂直滚动条。
当然也有其他方法,比如修改网页的尺寸呀?
有的时候部分元素的居中改为左对齐也能有效果
将WebBrower放在PictureBox控件中,用PictureBox的边框挡住WebBrower的边框。
例如,将WebBrowser1放大点,将PictureBox变小点...PictureBox的appearance设置为0-flat,呵呵,OK~~
3、禁止鼠标右键
PrivateFunctionM_Dom_oncontextmenu()AsBoolean
Webbrowser1.Document.oncontextmenu=False
EndFunction
'
引用MicrosoftHTMLOBjectLibrary
DimWithEventsM_DomAsMSHTML.HTMLDocument
M_Dom_oncontextmenu=False
PrivateSubWebbrowser1_Downloadplete()
SetM_Dom=Webbrowser1.Document
4、如何获得网页的容
先给个例子:
innerHTML:
设置或获取位于对象起始和结束标签的HTML
测试一下:
<
divid="
d"
style="
background-color:
#ff9966"
这是一个层<
/div>
inputtype="
button"
value="
获取innerHTML"
onclick="
getinnerHTML()"
设置innerHTML"
setinnerHTML()"
scriptlanguage="
javascript"
functiongetinnerHTML()
{
alert(document.getElementById("
).innerHTML)
}
functionsetinnerHTML()
document.getElementById("
).innerHTML="
divid='
d'
style='
#449966'
这是一个层,嘿嘿<
"
/script>
5、多框架框架页面访问
下面两句可以访问到多框架容
.Document.ParentWindow.Frames.Length
.Document.ParentWindow.Frames
(1).Document.all.tags("
a"
)
'
等待多框架网页全部加载完毕,否则出错
While.BusyOr.ReadyState<
4Or.Document.ParentWindow.Frames.Length=0
DoEvents
Wend
6、获得浏览器信息
PrivateSubmand1_Click()
WebBrowser1.Navigate"
.applevb."
EndSub
PrivateSubmand2_Click()
DimoWindow
DimoNav
SetoWindow=WebBrowser1.Document.parentWindow
SetoNav=oWindow.navigator
Debug.PrintoNav.userAgent
SetoWindow=Nothing
SetoNav=Nothing
7、弹出Webbrowser消息窗口
DimoWindow
SetoWindow=WebBrowser1.Document.parentWindow
oWindow.confirm"
abcd"
VB调用webbrowser技巧集2
8、向Webbrowser中写入HTML容的几种方法
向Webbrowser中写入HTML容的几种方法
首先在Form_Load中加入
about:
blank"
确保Webbrowser1可用
方法1:
DimsAsString
DimstreamAsIStream
s="
s=s+"
helloworld
WebBrowser1.Document.Writes
方法2:
Dimo
Seto=WebBrowser1.Document.selection.createrange
Debug.Printo
If(NotoIsNothing)Then
o.pasteHTML"
哈哈"
Seto=Nothing
EndIf
方法3:
插入文本框
o.execmand"
InsertTextArea"
False,"
xxx"
9、控制页面滚动
WebBrowser1.Document.parentwindow.scrollby0,30
10、判断页面是否可以前进后退
PrivateSubmand1_Click()
WebBrowser1.GoForward
PrivateSubmand2_Click()
WebBrowser1.GoBack
PrivateSubForm_Load()
PrivateSubWebBrowser1_mandStateChange(ByValmandAsLong,ByValEnableAsBoolean)
If(mand=CSC_NAVIGATEBACK)Then
mand2.Enabled=Enable
If(mand=CSC_NAVIGATEFORWARD)Then
mand1.Enabled=Enable
11、如何获得网页中被选中部分的HTML
DimobjSelection
DimobjTxtRange
SetobjSelection=WebBrowser1.Document.selection
IfNot(objSelectionIsNothing)Then
SetobjTxtRange=objSelection.createRange
IfNot(objTxtRangeIsNothing)Then
Debug.PrintobjTxtRange.htmlText
SetobjTxtRange=Nothing
SetobjSelection=Nothing
12、Navigate的参数调用
请问:
在WebBrwoser控件里提供的Navigate或者Navigate2方法中提供了传递数据
的参数,调用方式为:
WebBrowser1.Navigate2(URL,[Flags],
[TargetFrameName],[PostData],[Headers])
其中PostData参数就是一个提交参数字符串,例如"
name=aaa&
password=123"
,
但问题是为什么这个方法并不是有效的,服务器端不能取得数据?
如果这个方法是有效的话就不需要用一段html代码模拟这种调用了。
下面代码能检测出程序post出去的消息
PrivateSubWebBrowser1_BeforeNavigate2(ByValpDispAsObject,URLAsVariant,FlagsAsVariant,TargetFrameNameAsVariant,PostDataAsVariant,HeadersAsVariant,CancelAsBoolean)
MsgBoxPostData
13、WebBrowser的方法、属性、事件
WebBrowser的8个方法和13个属性,以及它们的功能:
方法说明
GoBack相当于IE的“后退”按钮,使你在当前历史列表中后退一项
GoForward相当于IE的“前进”按钮,使你在当前历史列表中前进一项
GoHome相当于IE的“主页”按钮,连接用户默认的主页
GoSearch相当于IE的“搜索”按钮,连接用户默认的搜索页面
Navigate连接到指定的URL
Refresh刷新当前页面
Refresh2同上,只是可以指定刷新级别,所指定的刷新级别的值来自RefreshConstants枚举表,
该表定义在ExDisp.h中,可以指定的不同值如下:
REFRESH_NORMAL执行简单的刷新,不将HTTPpragma:
no-cache头发送给服务器
REFRESH_IFEXPIRED只有在网页过期后才进行简单的刷新
REFRESH_CONTINUE仅作部使用。
在MSDN里写着DONOTUSE!
请勿使用
REFRESH_PLETELY将包含pragma:
no-cache头的请求发送到服务器
Stop相当于IE的“停止”按钮,停止当前页面及其容的载入
属性说明
Application如果该对象有效,则返回掌管WebBrowser控件的应用程序实现的自动化对象(IDispatch)。
如果在宿主对象中自动化对象无效,这个程序将返回WebBrowser
控件的自动化对象
Parent返回WebBrowser控件的父自动化对象,通常是一个容器,例如是宿主或IE窗口
Container返回WebBrowser控件容器的自动化对象。
通常该值与Parent属性返回的值相同
Document为活动的文档返回自动化对象。
如果HTML当前正被显示在WebBrowser中,则
Document属性提供对DHTMLObjectModel的访问途径
TopLevelContainer返回一个Boolean值,表明IE是否是WebBrowser控件顶层容器,是就返回true
Type返回已被WebBrowser控件加载的对象的类型。
例如:
如果加载.doc文件,就会返
回MicrosoftWordDocument
Left返回或设置WebBrowser控件窗口的部左边与容器窗口左边的距离
Top返回或设置WebBrowser控件窗口的部左边与容器窗口顶边的距离
Width返回或设置WebBrowser窗口的宽度,以像素为单位
Height返回或设置WebBrowser窗口的高度,以像素为单位
LocationName返回一个字符串,该字符串包含着WebBrowser当前显示的资源的名称,如果资源
是网页就是网页的标题;
如果是文件或文件夹,就是文件或文件夹的名称
LocationURL返回WebBrowser当前正在显示的资源的URL
Busy返回一个Boolean值,说明WebBrowser当前是否正在加载URL,如果返回true
就可以使用stop方法来撤销正在执行的访问操作
事件说明
PrivateEventsDescription
BeforeNavigate2导航发生前激发,刷新时不激发
mandStateChange当命令的激活状态改变时激发。
它表明何时激活或关闭Back和Forward
菜单项或按钮
Documentplete当整个文档完成是激发,刷新页面不激发
DownloadBegin当某项下载操作已经开始后激发,刷新也可激发此事件
Downloadplete当某项下载操作已经完成后激发,刷新也可激发此事件
Navigateplete2导航完成后激发,刷新时不激发
NewWindow2在创建新窗口以前激发
OnFullScreen当FullScreen属性改变时激发。
该事件采用VARIENT_BOOL的一个输
入参数来指示IE是全屏显示方式(VARIENT_TRUE)还是普通显示方式(VARIENT_FALSE)
OnMenuBar改变MenuBar的属性时激发,标示参数是VARIENT_BOOL类型的。
VARIANT_TRUE是可见,VARIANT_FALSE是隐藏
OnQuit无论是用户关闭浏览器还是开发者调用Quit方法,当IE退出时就会激发
OnStatusBar与OnMenuBar调用方法相同,标示状态栏是否可见。
OnToolBar调用方法同上,标示工具栏是否可见。
OnVisible控制窗口的可见或隐藏,也使用一个VARIENT_BOOL类型的参数
StatusTextChange如果要改变状态栏中的文字,这个事件就会被激发,但它并不理会程序是否有状态栏
TitleChangeTitle有效或改变时激发
14、本地文件收藏夹操作
基本上用specialfolder(6)就可以得到收藏夹的路径,然后你可以用dir去循环读入每个目录,然后dir里面的file,file的名字就是你要的收藏的名字,路径可以自己根据从上面得到的路径去得到.
如果你不用dir也可以用vb的dir控件.
PrivateTypeSHITEMID
cbAsLong
abIDAsByte
EndType
PublicTypeITEMIDLIST
mkidAsSHITEMID
PublicFunctionSpecialFolder(ByRefCSIDLAsLong)AsString
locatethefavoritesfolder
DimRAsLong
DimsPathAsString
DimIDLAsITEMIDLIST
ConstNOERROR=0
ConstMAX_LENGTH=260
R=SHGetSpecialFolderLocation(MDIMain.hwnd,CSIDL,IDL)
IfR=NOERRORThen
sPath=Space$(MAX_LENGTH)
R=SHGetPathFromIDList(ByValIDL.mkid.cb,ByValsPath)
IfRThen
SpecialFolder=Left$(sPath,InStr(sPath,vbNullChar)-1)
15、让Webbrowser全屏
是的,webbrowser本生是一个控件,你要它全屏,就是要它所在的窗体全屏,
可以用setwindowlong取消窗体的title,
用CallShowWindow(FindWindow(Shell_traywnd,),0)隐藏tray,就是下边那个包含开始那一行.
用CallShowWindow(FindWindow(Shell_traywnd,),9)恢复.够详细了吧.
然后在form1.windowstate=2就可以了.
16、选择网页上的容
请先选中一些容
Me.WebBrowser1.ExecWBOLECMDID_COPY,OLECMDEXECOPT_DODEFAULT
MsgBoxClipboard.GetText
17、用IE来下载文件
PrivateDeclareFunctionDoFileDownloadLibshdocvw.dll(ByVallpszFileAsString)AsLong
DimsDownloadAsString
sDownload=StrConv(Text1.Text,vbUnicode)
CallDoFileDownload(sDownload)
保存webbrowser中的HTML容
DimoPFAsIPersistFile
SetoPF=WebBrowser1.Document
oPF.Save"
TheFileNameHere.htm"
False
WebBrowser1.ExecWB怎么用
下面是我测试的参数
WB.ExecWB(4,1)
4,1保存网页
4,2保存网页(可以重新命名)
6,1直接打印
6,2直接打印
7,1打印预览
7,2打印预览
8,1选择参数
8,2选择参数
10,1查看页面属性
10,2查看页面属性
17,1全选
17,2全选
22,1重新载入当前页
22,2重新载入当前页
18、Webbrowser确定窗口对话框
某些网页出于各种考虑会弹出对话框要求信息确认,往往会中断我们的webbrowser过程,可以使用如下方法:
1.加入MicrosoftHtmlObject
2.加入语句
PrivateSubWebBrowser1_Navigateplete2(ByValpDispAsObject,URLAsVariant)
DimobjAsHTMLDocument
Setobj=pDisp.Document
obj.parentWindow.execScript"
functionshowModalDialog(){return;
}"
'
对showModalDialog引起的对话框进行确定
而confirm引发的对话确定框可用confirm替换showModalDialog即可,Alert等同理~
WebBrowser取得网页源码PrivateSubmand1_Click()
.sdqx.gov./sdcity.php"
PrivateSubWebBrowser1_Downloadplete()
页面下载完毕
Dimdoc,objhtml
Setdoc=WebBrowser1.Document
Setobjhtml=doc.body.createtextrange()
IfNotIsNull(objhtml)Then
Text1.Text=objhtml.htmltext
19、取得源码调试正常运行错误
我用WebBrowser取得网页源码,直接运行正常,但在编译后出错
提示:
实时错误“91”Object变量或with块变量没有设置
可能是没有下载完所致,
ifwebbrowser.busy=falsethen
endif
20、页面元素操作
1.根据标记名(tagname)的和元素名name来找到元素,
2.给元素赋值或是执行相关的事件.
例0:
查看网页元素
dima
foreachainwbr.document.all
text1.text=text1.text&
typename(a)&
vbcrlf
next
例1:
给username文本框填充容:
PrivateSubWebBrowser1_Documentplete(ByValpDispAsObject,URLAsVariant)
Dimdoc
Dimtg
Setdoc=WebBrowser1.Document
F
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 操作 网页 代码