我正在尝试使用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正确链接和编译我的文件的任何提示?
答案 0 :(得分:1)
您正在寻找:
ui.label->hide();
^^^
您的标签是生成的ui文件的一部分,依此类推。你可能有一个ui成员,所以你需要使用它。
我个人会使用堆对象,也就是说。指针,而不是堆栈对象,但这不是你肯定得到编译问题的原因。