有時候我們用多個信號發送端掛接同一個槽信號,而這個槽函數如果要判斷是哪個發送端發送的,這是可能有點困難,因爲這其實違反了面向對象的模塊化原則。
但是QT還是給我們留了一個函數,
[protected] QObject *QObject::sender() const;
簡單用法
void MainWindow::slot_function()
{
auto reply1 = qobject_cast<QABC *>sender();
if (reply1 == send1) {
}
auto reply2 = qobject_cast<QEFG *>sender();
if (reply2 == send2) {
}
}