【问题标题】:Ole object - opening a Web page in PowerBuilderOle 对象 - 在 PowerBuilder 中打开网页
【发布时间】:2015-12-03 21:57:29
【问题描述】:

我是这样打开网址的:

ole_1.Object.navigate (ls_url)

不幸的是,我无法在下拉列表中导航鼠标。我该如何解决这个问题?


我从一个网页开始示例 webbrowser8 http://www.topwizprogramming.com/freecode_webbrowser.html

效果与预期不同。在示例中,我运行一个网站https://www.persofoto.com/upload/index.php?mask=us。使用鼠标下拉列表无法选择图片大小。

【问题讨论】:

  • “不工作”相当含糊。与预期行为相比,获得的结果是什么? ole 对象的 progid 是什么?您能否发布 ole 对象的实例化代码(带有ConnectToNewObject 的行)
  • 1. “不起作用”意味着我无法选择值(通过单击鼠标)下拉列表。只有键盘上的一个选项卡。 2.什么是PROGID?在调试模式下,我在任何地方都看不到这样的属性。 3.没有ConnectToNewObject的行。唯一的代码是:ole_1.Object.navigate (ls_url)。 OLE 对象是基于窗口的。
  • 如何填充ole_1 变量?你在某处没有ConnectToObjectConnectToNewObject 吗?例如ole_1.ConnectToNewObject( "excel.application" ) 创建一个 Excel 实例,其中 excel.application 是程序 ID (progid)。
  • 如果您在外部应用程序中运行网站,例如。 Internet Explorer 一切正常。示例:IE = CREATE OLEObject IE.ConnectToNewObject ("InternetExplorer.Application") s_ie = IE.Fullname () Run (s_ie + "" + s_url) 问题是我对这个解决方案不满意。我想在 PB 中的对象“Window”中打开一个网页。
  • 请完成一个例子......

标签: powerbuilder navigateurl createoleobject


【解决方案1】:

在打开窗口之前执行此操作:

string ls_app
ls_app="Your application.exe"
// at design time ls_app="pb90.exe"

RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_USE_WINDOWEDSELECTCONTROL",  ls_app, RegULong!, 1)
RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_USE_WINDOWEDSELECTCONTROL",  ls_app, RegULong!, 1)
RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_TABBED_BROWSING",  ls_app, RegULong!, 1)
RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_TABBED_BROWSING",  ls_app, RegULong!, 1)

【讨论】:

  • 不幸的是,它没有帮助。鼠标在下拉列表上导航仍然不起作用。 BTW:如何切换到使用鼠标标签导航网站?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-12
相关资源
最近更新 更多