如何将Qt集成到现有的应用程序开发工作流程中?

时间:2011-10-24 19:22:36

标签: c++ visual-studio qt mfc

我一直在玩Qt一个星期左右,目的是将Qt对话框集成到现有的应用程序中。我已经想到使用我的MFC应用程序中的基本Qt消息框,例如:

extern "C" __declspec(dllexport) bool showDialog( HWND parent )
{
    QWinWidget win( parent );
    win.showCentered();
    QMessageBox::about( &win, "About QtMfc", "QtMfc Version 1.0\nCopyright (C) 2003" );

    return TRUE;
}

我使用Qt Designer创建对话框。我没想到的是如何将所有这些部分组合在一起。 Qt Designer给我留下了一个.ui文件。我已经看到我可以使用uic将其编译为.h文件,但其他部分在哪里,比如.cpp文件?此外,如果我想将Qt部件编译为按需加载的dll,那么该过程是什么?为了将其置于上下文中,现有应用程序具有1000个用户可能想要使用的对话框,因此它们都存在于根据需要加载的dll中,并且对话框作为额外的下载,如果您愿意,则为插件类型,与主程序。

这可能会遗漏很多,所以请提出问题。

感谢, 丹尼尔

1 个答案:

答案 0 :(得分:1)

获取VS plugin,它使Qt与VS无缝协作。

它将ui文件符合您可以从代码中调用的类。您还可以在C代码中编写对话框,菜单等。由于它使用sizer进行布局,因此没有很多X-Y坐标可以放置每个组件。

虽然如果可以的话,我会采用大爆炸的方法用Qt main取代MFC main并将功能转移。 AFAIK MFC对话框应该在Qt应用程序中完美运行。