Qt v4.8.0、VC2010コンパイラ
私はQMainWindow
ベースクラスを持っていて、それに関連する信号を送信しようとしていますQUuid
ただし、実行するたびにエラーが発生します。
Object::connect: No such slot MainWindow::on_comp_connected(QUuid) in ..\..\src\mainwindow.cpp:143
Object::connect: (receiver name: 'MainWindow')
スロットが確かに存在するので、それは私を取るに足らないものにしています(それはmoc_にあります)
class MainWindow : public QMainWindow
{
Q_OBJECT
// SNIP private typedefs
public:
MainWindow(QWidget *parent = 0, Qt::WFlags flags = 0);
~MainWindow();
// SNIP public methods
signals:
void testSendQuuid(const QUuid &qcid);
public slots:
void on_comp_connected(const QUuid &qcid);
private:
// SNIP private parts
QOpenAcnController *acnInt; // This is where the signal comes from
};
コンストラクターの最後MainWindow
(言及されている143行目)には、次のものがあります。
connect(acnInt, SIGNAL(callback_comp_connected(QUuid)),
this, SLOT(on_comp_connected(QUuid)));
スロットがmoc_mainwindow.cppに確実に存在することを考えると(私がチェックしたところ、それはスロット#1です)、一体何が接続の発生を止めているのでしょうか?
信号をスロットに接続しようとすると、testSendQuuid(QUuid)
そのような信号もスロットも取得しません。
Qtが間違いなくそこにあるスロットの存在を否定している理由を私は一生理解できません!