2

我编写了一些依赖于 Qt4 库的代码,并在一些项目中使用它。它处理显示 PDF、打印等并使用 poppler 库 我的新项目是使用 Qt5 制作的,我需要其中的这些功能。我的 qt4 库由 DLL 表示,它只返回 QWidget 派生类的对象。是否可以在我的新 qt5 项目中使用此 QWidget?也许经过一些包装?此外,在探索这个问题时,我来到了 Qt 插件。我还没有研究过这个领域,但是否有可能使用它们来解决问题?

提前致谢。

4

1 回答 1

2

Qt 4 和 Qt 5 不是二进制兼容的,所以不,您不能直接使用小部件。在同一个应用程序中同时使用Qt 4 和 Qt 5 听起来像是一个危险的想法......

最好的选择当然是将 libpoppler 移植到 Qt 5(您是否评估过这样的移植会有多复杂?可能不会太多)。第二个最好的方法是使用 QX11Embed,但是 Qt 5 目前缺少这些类,等待有人将它们移植到 QPA / XCB。

于 2013-06-14T16:37:34.583 回答