特定の変数が変更された場合に GUI を更新するために QT ウィジェットに渡されるブースト共有ポインターがあります。 null ではなく、そのメソッドを呼び出して何かを実行できます..) :
これは、エラーが発生するコードの部分です (CONNECT 関数で)。
void MTBFWidget::setKinectHandler(KinectHandlerPtr km)
{
kinectmanager=km;
connect(kinectmanager.get(),SIGNAL(positionhaschanged(int)),this,SLOT(setslidervalue(int)));
}
「MTBFWidget.h」内
class KinectHandler;
typedef boost::shared_ptr<KinectHandler> KinectHandlerPtr;
.
.
.
public slots:
void setslidervalue(int);
「KinectHandler.h」内
signals:
void positionhaschanged(int value);
信号は KinectHandler.cpp で発行されます。
reader.setPosition(position+3);
emit positionhaschanged(reader.getPosition());