C++的中的信号与槽
使用Qt5 的C++ 在头文件中 signal and slots 声明如下:
signals:
void signal1xxx();
void signal2xxx();
slots:
void slots1();
void slots2();
信号与槽的链接必须使用connect 函数将其关联。
QObject::connect(sender,signal,receiver,slot)
QML 中的信号与槽
在QML文件中,定义与使用如下:
import QtQuick 2.15
Item {
signal aa(); //定义 aa 信号
onAa() { //接收QML的aa 信号的槽函数,注意信号的首字母大写。
}
onSignal1() { // 接收C++中发来的signal1信号
}
}
C++暴露接口给QML的方式有三种:
- Properties
- Signals
- Methods (providing they are public slots or flagged with Q_INVOKABLE)