是否能够加载和嵌入OCX控件的JavaFX?我想在我的应用程序中使用Internet Explorer,因为WebKit浏览器缺乏对ActiveX的支持。因为我必须依赖第三方ActiveX控件(我知道它们是邪恶的),所以我必须使用IE。
这个问题并不完全与“我可以在Java中使用OCX”有关,因为我想为我想要使用的JavaFX提供某种组件。
或者我必须依赖这里发布的图书馆:
提前致谢,
斯文
答案 0 :(得分:1)
您必须依赖于您在问题中提供的链接中发布的库。 或者您需要编写自己的JNI接口。
如果您访问OCX组件,您可能需要将它们放在自己的窗口中而不是共享由JavaFX阶段创建的窗口,因为您可能会遇到JavaFX渲染器在OCX窗口部分上发生冲突的问题显示组件 - 您必须尝试并查看确认的内容。
更简单的方法可能是请求应用程序的用户将其默认浏览器设置为IE,然后调用JavaFX hostservices.showDocument(uri) api以启动嵌入所需OCX组件的IE页面。 / p>
另一种选择是:
它可能会奏效,但它是一个丑陋的科学怪人解决方案。 。
如果您可以将您的媒体转换为JavaFX支持的格式并直接通过JavaFX播放,那将更为可取,或者由于深度ActiveX集成需求而导致JavaFX不是最好的解决你的问题,你可以用Silverlight之类的东西做得更好。