Ruslan Polupan
Ruslan PolupanOct. 24, 2018, 7:28 a.m.

QWizardPage, Послать сигнал главному окну.

QWizard, QWizardPage, signal, QMainWindow

В главном окне создаю объект QWizard

    recWiz = new RecoveryWizard();
    connect(recWiz, &RecoveryWizard::signalHideWiz,this,&MainWindow::slotHideWiz);
    ui->verticalLayout->addWidget(recWiz);
    recWiz->show();

В конструкторе класса QWizard добавляю страницы:

RecoveryWizard::RecoveryWizard(QWidget *parent) :
    QWizard(parent),
    ui(new Ui::RecoveryWizard)
{
    ui->setupUi(this);

    this->setPage(CONNECTIONS_PAGE, new ConnectionsPage());
    this->setPage(TERMINALS_PAGE, new TerminalsPage());

    disconnect( button( QWizard::CancelButton ), &QAbstractButton::clicked, this, &QDialog::reject );
    connect(button(QWizard::CancelButton),&QAbstractButton::clicked,this,&RecoveryWizard::cancelWizard);
}

Со страницы TERMINALS_PAGE нужно передать значение в MainWidow (там TableWidget cо сводной информацией полученной при работе мастера).

Никак не могу сообразить как связать сигалам/слотом страницу QWizardPage и главное окно.




We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.

Do you like it? Share on social networks!

3
Evgenii Legotckoi
  • Oct. 24, 2018, 7:39 a.m.

В классе TerminalsPage я бы сделал метод, который выдаёт ваши значения, например

TerminalsPage::getMyData();

Уж не знаю какой у вас там тип данных, но думаю, что вы сами разберётесь с этим, тут главное идея.

Дальше выделял бы переменную под TerminalsPage в визарде.

m_terminalsPage = new TerminalsPage();
this->setPage(TERMINALS_PAGE, m_terminalsPage);

Далее, в обработчике завершения визарда, полагаю, что там есть  кнопка финиш или ОК, посылал бы сигнал с теми данными.

void RecoveryWizard::onOkButtonClicked()
{
    emit sendData(m_terminalsPage.getMyData());
}

А в главном окне добавил бы сигнал слотовое соединение для обработки полученных данных

connect(recWiz, &RecoveryWizard::sendData,this,&MainWindow::handleData);


    Ruslan Polupan
    • Oct. 24, 2018, 8:14 a.m.

    Идею понял. Спасибо. Просто думал есть возможность сразу до главного окна достучатся.

      Evgenii Legotckoi
      • Oct. 24, 2018, 8:22 a.m.
      • (edited)

      Ну как бы через создание страниц вне визарда и передачу указателей на эти страницы в визард можно более близко расположить возможность доступа к страницам из главного окна... Вот только архитектурно, по моему мнению, это будет направильно. Страницы - это часть визарда, а не главного окна. Главное окно вообще ничего не должно знать о страницах, оно должно только получить результат, не более.

        Comments

        Only authorized users can post comments.
        Please, Log in or Sign up
        AD

        C ++ - Test 004. Pointers, Arrays and Loops

        • Result:50points,
        • Rating points-4
        m

        C ++ - Test 004. Pointers, Arrays and Loops

        • Result:80points,
        • Rating points4
        m

        C ++ - Test 004. Pointers, Arrays and Loops

        • Result:20points,
        • Rating points-10
        Last comments
        i
        innorwallNov. 15, 2024, 7:27 a.m.
        Release of C++/Qt and QML application deployment utility CQtDeployer v1.4.0 (Binary Box) optionally substituted alkoxy, optionally substituted alkenyloxy, optionally substituted alkynyloxy, optionally substituted aryloxy, OCH, OC H, OC H, OC H, OC H, OC H, OC H, O C CH, OCH CH OH, O…
        i
        innorwallNov. 15, 2024, 2:26 a.m.
        Qt/C++ - Lesson 031. QCustomPlot – The build of charts with time buy generic priligy We can just chat, and we will not lose too much time anyway
        i
        innorwallNov. 15, 2024, 12:03 a.m.
        Qt/C++ - Lesson 060. Configuring the appearance of the application in runtime I didnt have an issue work colors priligy dapoxetine 60mg revia cost uk August 3, 2022 Reply
        i
        innorwallNov. 14, 2024, 5:07 p.m.
        Circuit switching and packet data transmission networks Angioedema 1 priligy dapoxetine
        i
        innorwallNov. 14, 2024, 4:42 p.m.
        How to Copy Files in Linux If only females relatives with DZ offspring were considered these percentages were 23 order priligy online uk
        Now discuss on the forum
        i
        innorwallNov. 14, 2024, 8:39 a.m.
        добавить qlineseries в функции priligy amazon canada 93 GREB1 protein GREB1 AB011147 6
        i
        innorwallNov. 11, 2024, 3:55 p.m.
        Всё ещё разбираюсь с кешем. priligy walgreens levitra dulcolax carbs The third ring was found to be made up of ultra relativistic electrons, which are also present in both the outer and inner rings
        9
        9AnonimOct. 25, 2024, 2:10 p.m.
        Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

        Follow us in social networks