У меня есть 2 виджета, унаследованных от QDialog .Один из этих виджетов вызывается другим виджетом.
Мне нужно передать данные из родительского виджета в дочерний.Например, я хочу передать QStringList.
Я могу сделать сигналы и слоты в обоих классах.Слот родительского класса виджетов - TransferList (QStringList) - заполняет мой QStringList.
Как мне установить соединение между сигналом и слотом?Дочерний виджет, конечно, ничего не знает о родителе.
// .h-file of parent widget.
class ElectricIndicationDialog : public QDialog {
#include "PollIndication.h" // class of child widget
QSharedPointer <PollIndication> pollInd;
public slots:
void transferList(QStringList);
signals:
void listTfansfer(QStringList);
private:
QStringList sendList;
};
// .cpp-file of parent widget
pollInd = QSharedPointer <PollIndication>(new PollIndication());
pollInd->show();
void ConfIndication::transferList(QStringList lst) {
lst.append("str1");
lst.append("str2");
}
// .h-file of child widget
class PollIndication : public QDialog {
public slots:
void getList(QStringList);
signals:
void listGet(QStringList);
private:
QStringList recList; // We transfer data to it
}