c++ - Qt C++ 中不同类的信号/插槽功能

标签 c++ qt qt4

对于一个类,我声明了一个槽和一个信号,并且在槽方法定义中我调用了带有 emit 关键字的信号方法。但是我怎样才能将一个类的信号发送到另一个有插槽的类。

好吧,我尝试用一​​个按钮来修改标签文本。 Button 由 A 类创建(它必须发出信号),而 label 由类 B 创建,它必须有一个插槽来修改它上面的文本

最佳答案

看起来你有类 1,它有一个将要执行的方法,并将调用“emit”。发生这种情况时,另一个类的槽会发现。

第一类的定义:

class songs_text {
public:
signals:
    void send_signal();
}

int songs_text:function() { 
    emit send_signal();
}

类2的定义:

class wind {
public slots:
    void continue_job() {
    };
}

和你的主程序:

Wind wind(); 
Get_source songs_text(&mtempfile);

QObject::connect(&songs_text, SIGNAL(send_signal()),
    &wind, SLOT(continue_job()));

关于c++ - Qt C++ 中不同类的信号/插槽功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8523426/

相关文章:

c++ - 如何将 QMainWindow 设置为模式窗口?

java - 从 C++ 代码运行 JVM 并设置类路径

c++ - 构造函数和继承 C++

c++ - 我可以使用对派生类实例的基类引用来初始化派生类引用吗?

qt - Qt中Q_D宏的作用是什么

c++ - Qt和Arduino串行通信(读写)

c++ - 谷歌测试没有找到任何测试

c++ - Q_ENUM 到 ostream

c++ - 膨胀的 EXE 大小,以及不需要的 Qt/MingW 依赖项

qt - QWidget上的缩放功能