我正在尝试从其子项中获取父窗口小部件的一些属性:SamplerModule
:InstrumentSelector
。
从InstrumentSelector
构造函数中,我运行parent->metaObject()->className()
,它给出了正确的名称(SamplerModule)。所以我确信我在正确的位置调用我的一个公共方法,例如getT()
在我的SamplerModule
标头和cpp文件中定义为公共方法。
但是,当我调用此函数时,我收到此错误:
\ app \ widgets \ instrumentselector.cpp:23:erreur:'class QWidget'没有名为'getT'的成员 msgBox.setText(父 - > GETT());
所以我认为这是C ++和Qt基础知识,但我仍然在学习。
有人有想法吗?
由于
答案 0 :(得分:1)
没有看到代码,很难肯定,但我的猜测是你已经将“parent”定义为“QWidget *”,因此编译器不知道它实际上是一个指向SamplerModule的基指针。您需要将“父”转换为SamplerModule指针,或者以此方式声明它。是的,这是纯粹的C ++;它与Qt无关。