Ruslan Polupan
Oct. 23, 2018, 12:58 a.m.

QWizard. Создание в QtDesinger

QWizard, QtDesigner

Реально ли использовать мастер создания форм для разработки QWizard? Или проще основываясь на примерах из документации создавать формы программно?

Информации в сети ни нашел никакой по поводу QtDesinger и QWizard.

Буду очень благодарен если кто-то поделится.




3

Do you like it? Share on social networks!

5
Arrow
  • Oct. 23, 2018, 1:13 a.m.

Под программно имеется ввиду ручное написание кода С++?

Если так,  то лучше использовать дизайнер по максимуму, быстрее скорость разработки интерфейса и проще в разы чем все вручную описывать, да и наглядно.

Если в учебных целях для лучшего понимания работы, то тогда в ручную и с пустого проекта.

Насчёт QWizard. Там не так-то и много вариаций предлагается, посмотрите, что каждый из вариантов собой представляет и используйте если подходит :)


    Ruslan Polupan
    • Oct. 23, 2018, 1:15 a.m.

    Дизайнером вроде удобно. кое что получается. Только во всех примерах его не используют :-)

      Arrow
      • Oct. 23, 2018, 1:21 a.m.

      Проще привести в пример код, чем код + скриншот + описание настроек сделанных в дизайнере. Меньше места занимает и яснее (для примеров) :)

        Evgenii Legotckoi
        • Oct. 23, 2018, 2:07 a.m.

        Я так думаю, что это возможно. Вам нужно будет создать Ui форму, а потом руками добавить её в качестве страницы в QWizard, например, или как там это делается ))), а потом каким-то образом получить доступ к её элементам, например через метод getUi . Мы на работе такое делаем в некоторых случаях.

        Я приводил пример такой ui формы вот в этом ответе , возможно, что это то, что вам нужно.

          Ruslan Polupan
          • Oct. 23, 2018, 3:35 p.m.

          Создал в дизайнере формы QWizardPage

          В конструкторе прописал следующее:

          1. MyWizard::MyWizard(QWidget *parent) :
          2. QWizard(parent),
          3. ui(new Ui::MyWizard)
          4. {
          5. ui->setupUi(this);
          6. this->setPage(INTRO_PAGE, new IntroPage());
          7. this->setPage(TERMINALS_PAGE, new TerminalPage());
          8.  
          9.  
          10.  
          11. }

          А уж в конструкторе MainWindow:

          1. myWiz = new MyWizard(this);
          2. ui->verticalLayout->addWidget(myWiz);
          3. myWiz->show();

          Вроде работает.

          Буду ковыряться дальше




            Comments

            Only authorized users can post comments.
            Please, Log in or Sign up
            • Last comments
            • AK
              April 1, 2025, 11:41 a.m.
              Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
            • Evgenii Legotckoi
              March 9, 2025, 9:02 p.m.
              К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
            • VP
              March 9, 2025, 4:14 p.m.
              Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
            • ИМ
              Nov. 22, 2024, 9:51 p.m.
              Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
            • Evgenii Legotckoi
              Oct. 31, 2024, 11:37 p.m.
              Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup