带有qt的Visual Studio无法编译gui类

时间:2018-06-03 09:56:41

标签: c++ visual-studio qt

我最近发现这个工具允许在visual studio中使用qt,所以我想尝试一下。 点击here查看我使用的工具。

所以我刚刚安装了该工具,当然还安装了qt(版本5.11.0),然后在Visual Studio中出现了一个新菜单,引用了qt,其中我必须设置包含qt的路径。在此之前,在qt的安装中我还必须指定安装与visual studio 2017的集成(它不是默认值),这样我就可以设置路径了。

Here is the options of qt in visual studio

现在是问题开始的时候,我创建了一个qt项目并尝试编译,它运行正常,没有任何问题。但后来我尝试用助手添加一个GUI类并再次编译,在这种情况下,一些错误似乎与未解析的外部符号有关。

Visual Studio errors

在gui班中还有一个Q_OBJECT的警告,经过一些研究我发现这可能是问题但是因为我第一次使用qt我不知道。

这是我创建的GUI类的代码。

#pragma once

#include <QtWidgets/qwidget.h>
#include <GeneratedFiles/ui_WindowTFG.h>

class WindowTFG : public QWidget
{
    Q_OBJECT

public:
    WindowTFG(QWidget *parent = Q_NULLPTR);
    ~WindowTFG();

private:
    Ui::WindowTFG ui;
};

这是我的visual studio和qt版本。 Visual Studio 2017 15.7.1 - Qt 5.11.0

如果有人能指出我正确的方向,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

好的,因为似乎没有人知道问题在哪里我会更新情况,以防它对某人有用。

我无法编译我的项目,但我发现了一种&#34;方式&#34;为了在visual studio中使用qt,在Visual Studio中创建一个qt项目的那一刻,我选择了&#34; qt控制台应用程序&#34;,好吧,而不是那个我尝试过的选项&#34; qt GUI应用程序&#34;已经创建了一个带有GUI类的项目。这次我可以编译我的项目并像往常一样使用它,与我无法编译的类的区别是带有扩展名的文件&#34; .qrc&#34; (除了.h,.cpp和.ui文件)所以我的猜测是因为那个丢失的文件我以前的项目不能正常工作。

希望这对有类似问题的人有用。

如果其他用户可以解释这个问题,我会暂时解决这个问题。