是否可以在 Java 应用程序中轻松嵌入 ActiveX 控件?这值得么。在我的下一个项目中,我应该在 Java 应用程序中使用现有的 activex,或者必须从头开始重新实现所有内容,所以我想知道什么会少一些麻烦。
3 回答
我认为不求助于第三方库就没有办法做到这一点。(或者你自己滚动,但你确实说“容易”。)
SWT(“标准小部件工具包”)包含对嵌入 ActiveX 控件的支持。SWT 是 Swing 的替代方案,尽管它们之间存在一定程度的互操作性。
这是在 SWT 窗口中嵌入 Windows Media Player 的示例。
或者还有Jacob项目,虽然我自己没有使用过。
至于“值得吗?” 好吧,我可以根据经验说 SWT 使它相对容易,但是除非您的应用程序可以优雅地处理它们不可用的问题,否则通过依赖 COM 组件,您将失去在多个平台上运行的能力,而这首先使 Java 具有吸引力.
这实际上取决于您需要重新实施多少。Jacob 项目相当不错(我们广泛用于 Excel 和 Word 的自动化),但你必须真正了解COM 才能使用它,尤其是 IDispatch 接口的变幻莫测(使用 ActiveX / COM 的人很少真正了解 COM -他们只是依赖微软的模板生成)。
如果您只是想为一些简单的 DAO 对象节省一些输入,那么重新实现可能会更好(哎呀,您可能会使用 DTD 并编写一个脚本来为其生成 Java 代码)。
http://www.codeproject.com/KB/cross-platform/javacom.aspx?msg=1776281如果您愿意手工做一些事情可能会有所帮助...
不过好像不是很灵活...