onbeforenavigate2 打开一个html文件,Webbrowser控件使用方法

本文探讨了如何在VBA中通过WebBrowser对象发送PostData参数到服务器,分析了Navigate方法的使用误区,并详细列举了WebBrowser控件的方法和属性,以帮助理解为何有时数据传递失败。解决方法可能涉及编码问题和正确设置请求头。
摘要由CSDN通过智能技术生成

[TargetFrameName],[PostData],[Headers])

其中PostData参数就是一个提交参数字符串,例如"name=aaa&password=123",

但问题是为什么这个方法并不是有效的,服务器端不能取得数据?

如果这个方法是有效的话就不需要用一段html代码模拟这种调用了。

下面代码能检测出程序post出去的消息

Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)

MsgBox PostData

End Sub

WebBrowser的8个方法和13个属性

WebBrowser的8个方法和13个属性,以及它们的功能:

方法说明

GoBack 相当于IE的“后退”按钮,使你在当前历史列表中后退一项

GoForward 相当于IE的“前进”按钮,使你在当前历史列表中前进一项

GoHome 相当于IE的“主页”按钮,连接用户默认的主页

GoSearch 相当于IE的“搜索”按钮,连接用户默认的搜索页面

Navigate 连接到指定的URL

Refresh 刷新当前页面

Refresh2 同上,只是可以指定刷新级别,所指定的刷新级别的值来自RefreshConstants 枚举表,

该表定义在ExDisp.h中,可以指定的不同值如下:

REFRESH_NORMAL 执行简单的刷新,不将HTTP pragma: no-cache头发送给服务器REFRESH_IFEXPIRED 只有在网页过期后才进行简单的刷新

REFRESH_CONTINUE 仅作内部使用。在MSDN里写着DO NOT USE! 请勿使用REFRESH_COMPLETELY 将包含pragma: no-cache头的请求发送到服务器[Page]

Stop 相当于IE的“停止”按钮,停止当前页面及其内容的载入

属性说明

Application 如果该对象有效,则返回掌管WebBrowser控件的应用程序实现的自动化对象(IDispatch)。如果在宿主对象中自动化对象无效,这个程序将返回WebBrowser

控件的自动化对象

Parent 返回WebBrowser控件的父自动化对象,通常是一个容器,例如是宿主或IE窗口

Container 返回WebBrowser控件容器的自动化对象。通常该值与Parent属性返回的值相同

Document 为活动的文档返回自动化对象。如果HTML当前正被显示在WebBrowser中,则

Document属性提供对DHTML Object Model的访问途径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Delphi XE10是一个功能强大的集成开发环境(IDE),用于创建应用程序。通过使用Delphi XE10,可以制作一个简单的浏览器。 首先,我们需要创建一个新项目并命名为“浏览器”。在主窗体中添加一个TWebBrowser组件。然后,将TWebBrowser的Align属性设置为alClient,以使其填充整个窗体。 接下来,我们需要添加一些导航按钮和地址栏以提供浏览器功能。我们可以使用TButton来创建前进、后退和刷新按钮,将其放置在工具栏或其他容器控件中。对于地址栏,我们可以使用TEdit组件,并在用户输入URL后通过代码来加载该URL。 要实现浏览功能,我们需要为前进、后退和刷新按钮编写事件处理程序。对于前进按钮,可以使用TWebBrowser组件的GoForward方法。对于后退按钮,可以使用GoBack方法。刷新按钮可以使用Refresh方法。 另外,我们也可以通过在TWebBrowser的OnNavigateError事件中添加一些代码来处理页面加载错误。这样,当用户加载无效的URL时,我们可以显示一个错误消息或执行其他操作。 最后,我们可以添加一些其他功能,如在网页上搜索、更改字体大小等。这些功能可以通过在TWebBrowser控件上调用方法或访问属性来实现。 通过这些步骤,我们可以使用Delphi XE10制作一个基本的浏览器应用程序。当然,这只是一个简单的示例,您可以根据需要添加更多功能和改进用户界面。 ### 回答2: Delphi XE10 是一款功能强大的集成开发环境(IDE),可以用于开发各种类型的应用程序,包括浏览器。下面是一些步骤,可以用 Delphi XE10 制作一个简单的浏览器。 1. 创建一个新的 Delphi 项目,并选择一个合适的名称。 2. 在主窗体中,添加一个 TWebBrowser 组件。TWebBrowser一个内嵌的浏览器控件,允许我们在 Delphi 应用程序中显示网页内容。 3. 在窗体上添加一个编辑框和一个按钮。编辑框用于输入网址,按钮用于加载网页。 4. 绑定按钮的 OnClick 事件,并在事件处理程序中,通过 TWebBrowser 组件的 Navigate 方法加载指定网址。你可以使用编辑框的 Text 属性获取用户输入的网址。 5. 运行程序,输入一个网址并点击按钮,即可加载并显示网页内容。 通过上述步骤,我们可以使用 Delphi XE10 创建一个简单的浏览器。然而,这只是一个基础的实现,我们可以进一步进行改进和扩展,添加前进、后退、刷新等按钮,实现历史记录和书签功能,以及其他高级功能,如 JavaScript 解析、Cookie 管理等。此外,我们还可以美化界面,添加个性化的功能和特性,以满足用户的需求。 Delphi XE10 提供了强大的开发工具和丰富的组件库,使我们能够快速、高效地开发各种应用程序,包括浏览器。通过合理利用 Delphi XE10 的功能和组件,我们可以实现一个稳定、安全且功能完善的浏览器应用程序。 ### 回答3: Delphi XE10是一款功能强大的集成开发环境(IDE),可以用于开发各种类型的应用程序,包括浏览器。制作浏览器需要以下步骤: 1. 设计用户界面:首先,我们需要创建一个窗口,并为其添加各种用户界面控件,例如地址栏、导航按钮和网页显示区域等。 2. 导入Web浏览器组件:Delphi XE10内置了TWebBrowser组件,该组件是基于Microsoft Internet Explorer的ActiveX控件。我们可以在工具箱中找到并将其拖放到用户界面中。 3. 控制浏览器:通过代码编写,我们可以使用TWebBrowser组件来控制浏览器的各种功能,例如加载网页、导航到其他页面、前进后退、刷新等。 4. 添加事件处理程序:我们可以为浏览器组件的各种事件(例如OnDocumentComplete、OnBeforeNavigate等)编写处理程序,以便在特定情况下执行特定的操作或处理特定的事件。 5. 实现高级功能:如果需要实现更高级的浏览器功能,例如添加插件、处理JavaScript代码、拦截网页请求等,我们可以使用Delphi XE10提供的更高级的Web浏览器组件或第三方组件。 总之,利用Delphi XE10可以轻松地制作出功能完善的浏览器应用程序。我们可以使用TWebBrowser组件来控制浏览器的基本功能,以及通过开发人员编写的代码来处理浏览器的事件,并通过使用更高级的组件或第三方组件实现更多的高级功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值