使用VS2012未为Qt加载引用

时间:2014-05-04 17:50:31

标签: c++ qt visual-studio-2012 qtgui qlabel

我正在尝试使用Windows学习一些Qt和c ++(像往常一样,我没有问题)。已安装Qt 5.2.1和vs加载项。

当我创建最简单的项目(对话框和标签)时,我可以运行它没有问题,除非我尝试在代码中更改某些内容,例如:

SimpleLLabel::SimpleLLabel(QWidget *parent)
    : QMainWindow(parent)
{
    ui.setupUi(this);
    label->hide();
}

我收到以下错误:

  

1> simplellabel.cpp   1> simplellabel.cpp(8):错误C2065:'label':identificador no declarado   1> simplellabel.cpp(8):错误C2227:el operando izquierdo de' - >hide'debeseñalaral> tipo class / struct / union / generic

转换为标签的未声明标识符。

标签由Qt(name ui_simplellabel.h)存在于“generated files”文件夹中。此目录中的所有文件都显示为无条目符号。我已经尝试将它们添加到“不排除编译”但没有解决我的问题。此外,“生成的文件”文件夹出现在项目属性> c ++>其他目录。

有关如何让VS2012正确链接和编译我的文件的任何提示?

1 个答案:

答案 0 :(得分:1)

您正在寻找:

ui.label->hide();
^^^

您的标签是生成的ui文件的一部分,依此类推。你可能有一个ui成员,所以你需要使用它。

我个人会使用堆对象,也就是说。指针,而不是堆栈对象,但这不是你肯定得到编译问题的原因。