【问题标题】:add Qt to existing Visual Studio c++ project [closed]将 Qt 添加到现有的 Visual Studio C++ 项目 [关闭]
【发布时间】:2011-05-01 00:38:08
【问题描述】:

我有一个现有的 Visual Studio C++ 项目。它使用 GLUT 创建一个主窗口,并使用 glut 作为右键单击上下文菜单。

我现在要做的就是打开第二个窗口,用作属性检查器来显示和更改一些值。

每个人都建议使用 Qt 进行 GUI 开发,但我发现的所有教程都讨论了在 Qt creator 中工作或如何从头开始创建 Qt 项目。

几年前我曾使用 Qt 做过类似的事情,将它添加到我的项目中并不难。

谁能解释一下,或者给我一个解释如何做到这一点的教程?

谢谢!

【问题讨论】:

  • 如果你在 Visual Studio 中,你应该只使用 WPF。
  • WPF 是 .Net 不是吗?这是我正在开发的 C++ 项目
  • 哦,你只是说 Visual Studio,所以我假设它是一个 .NET 项目。
  • 我只是想要一种轻松的方式来将一个非常简单的图形用户输入添加到一个正常工作的 c++ 应用程序中
  • 问题是你不知道如何在没有 QtCreator 的情况下构建你的小部件?

标签: c++ visual-studio qt


【解决方案1】:

感谢 Arno Duvenhage 和 Tom 的回答。以下是在 Qt 5.2.1 和 Visual Studio 2012 和 2015 中为我工作的步骤:

  1. 安装 QT 插件(Visual Studio 2015 仍处于测试阶段,但完全适合我)。

  2. 右击项目,选择“卸载项目”。

  3. <keyword>Qt4VSv1.0</keyword> 条目添加到<PropertyGroup Label="Globals"> 标记中。

  4. 选择加载项目。

  5. 在“Qt 5”菜单中选择“Convert project to Qt Add-in project”。

  6. 快完成了。进入 Qt 项目设置和 Qt 菜单中的 Qt 选项设置详细信息。

  7. 在您的项目属性 Linker\Additional Library Directories\ 中可能需要添加 $(QTDIR)\lib

  8. 在您的项目属性 C++\Additional Include Directories\ 中可能需要添加 $(QTDIR)\include

  9. 在从 Q_OBJECT 派生的每个类中,删除 Q_OBJECT 宏,保存文件,返回 Q_OBJECT 宏 (Ctrl+Z),然后再次保存。它将“moc”文件添加到您生成的文件夹中。

  10. 将您的项目设置为启动项目。

【讨论】:

    【解决方案2】:

    这对我有用:

    • 在工程文件中手动将工程版本改为qt工程——使用<Keyword>Qt4VSv1.0</Keyword>'
    • 重新加载项目
    • 右键单击项目并选择“更新到 qt-addin 项目”
    • 删除qt源文件并将其添加到项目中

    希望对你有帮助。

    【讨论】:

    • 更准确地说,将 Qt4VSv1.0 条目添加到 标记中。然后选择
    【解决方案3】:

    使用 xml 编辑器编辑您的项目
    我通常卸载项目,右键单击它并选择编辑

    添加您希望使用的 qt 版本(对我来说是):

    Keyword="Qt4VSv1.0"
    

    以及以下全局变量

            <Global
            Name="lupdateOnBuild"
            Value="0"
        />
        <Global
            Name="MocDir"
            Value=".\GeneratedFiles\$(ConfigurationName)"
        />
        <Global
            Name="MocOptions"
            Value=""
        />
        <Global
            Name="QtVersion Win32"
            Value="QT 4.5.3"
        />
        <Global
            Name="RccDir"
            Value=".\GeneratedFiles"
        />
        <Global
            Name="UicDir"
            Value=".\GeneratedFiles"
        />
    

    重新加载项目并使用“将项目转换为 QMake 生成的项目”,它应该可以工作

    【讨论】:

    • 全局变量对我不起作用。但是添加关键字并在属性页上设置这些配置确实如此。
    • 这对我来说适用于 Qt 5.9.9 和 Visual Studio 2019。“将项目转换为 QMake 生成的项目”位于 Extensions->QT VS Tools 下的文件菜单中,或者通过右键单击项目 -> Qt
    【解决方案4】:

    qmake 可以从 .pro 文件生成 .vcproj。所以你应该阅读 qmake 文档来创建一个正确的 .pro 文件。

    【讨论】:

      猜你喜欢
      • 2020-12-22
      • 2014-06-20
      • 1970-01-01
      • 1970-01-01
      • 2013-07-16
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      • 1970-01-01
      相关资源
      最近更新 更多