继承的对象[Qt5]中出现信号和插槽问题

丹尼尔大帝

我创建了MySoundEffect类,是因为我想通过使其能够返回自播放开始后经过的时间来增强其isPlaying()函数。所以我做了您在代码中看到的。

问题是,构造函数中的连接会引发错误。就像我连接到父母的asetTimer()插槽(当然不存在)一样。我在运行时用调试器检查了此指针,它指向MySoundEffect对象。

我究竟做错了什么?

。H

#ifndef MYSOUNDEFFECT_H
#define MYSOUNDEFFECT_H

#include <QSoundEffect>
#include <QElapsedTimer>

class MySoundEffect : public QSoundEffect
{
    QElapsedTimer* timer;

public slots:
    void asetTimer();

public:
    MySoundEffect();
    ~MySoundEffect();

    int isPlaying();
};

#endif // MYSOUNDEFFECT_H

.cpp

#include "mysoundeffect.h"

MySoundEffect::MySoundEffect() : QSoundEffect()
{
    timer = new QElapsedTimer();
    connect(this,SIGNAL(playingChanged()), this, SLOT(asetTimer()));
}

void MySoundEffect::asetTimer(){
    if (QSoundEffect::isPlaying() == true){
        timer->restart();
    }
}

int MySoundEffect::isPlaying(){
    if (QSoundEffect::isPlaying() == true){
        return timer->elapsed();
    }
    else{
        return -1;
    }
}

MySoundEffect::~MySoundEffect(){
    delete timer;
}

错误:

QObject::connect: No such slot QSoundEffect::asetTimer() in ../rob3/mysoundeffect.cpp:6
Madduci

在构造函数之前忘记了魔术关键字Q_OBJECT没有它,信号/插槽机制将无法工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

继承的对象[Qt5]中出现信号和插槽问题

来自分类Dev

QT5中的信号和插槽

来自分类Dev

qt5:将过载信号和插槽功能与static_cast连接

来自分类Dev

是否可以从Qt5 QML中的信号断开所有插槽?

来自分类Dev

Qt5:无法将信号连接到插槽

来自分类Dev

Qt信号/插槽问题

来自分类Dev

Qt插槽和信号。获取插槽接收器对象

来自分类Dev

Qt:连接文本中的信号和插槽

来自分类Dev

在QT中清除信号和插槽的命名

来自分类Dev

信号和插槽 qt 关闭插槽

来自分类Dev

Qt信号和插槽:权限

来自分类Dev

Qt插槽和信号语法

来自分类Dev

Qt信号和插槽故障

来自分类Dev

QT5 C++ 信号到 QML 插槽不起作用

来自分类Dev

Qt5:虽然已连接,但发出信号但未调用插槽

来自分类Dev

如何在Qt中创建动态信号和插槽?

来自分类Dev

Qt 插槽和信号:MainWindow 中没有匹配函数

来自分类Dev

Qt5 跨线程信号和槽

来自分类Dev

Qt5信号捕获到插槽会生成运行时错误“信号不存在”

来自分类Dev

将信号和插槽附加到QSharedPointer中的对象

来自分类Dev

Qt信号和插槽传递数据

来自分类Dev

Qt-2类信号和插槽

来自分类Dev

如何在“ Qt C ++框架”中使用“信号”和“插槽”实现纯粹的“面向对象”方法?

来自分类Dev

直接调用函数与发出信号(Qt-信号和插槽)

来自分类Dev

Qt插槽和信号未连接:无此信号

来自分类Dev

SVG图标未出现在Qt5中

来自分类Dev

Qt5代表另一个对象发出信号

来自分类Dev

来自主线程的信号未到达第二线程Qt 5中的插槽

来自分类Dev

Qt5 | 带插槽的功能不起作用