Qt Designer доки виджетов потомков - PullRequest
0 голосов
/ 08 февраля 2012

Я создал форму, используя Qt Designer, у которого есть несколько док-виджетов, у этих док-виджетов есть некоторые дочерние виджеты. Как я могу получить доступ к dockwidget и этим дочерним виджетам в моем mainwindow.cpp?

Ответы [ 2 ]

5 голосов
/ 08 февраля 2012

Я настоятельно рекомендую читать документы для такого рода вещей, но, чтобы дать вам небольшой старт, QDockWidget наследует от QWidget, который наследует от QObject:

https://doc.qt.io/qt-4.8/qobject.html#children

widget-> children () просто скажет вам детей этого виджета.Это понадобится, если вы еще не знали имен объектов, к которым нужно обращаться напрямую, или не имели на них ссылки.

Обновление

При созданииобъектов в Qt Designer, и вы запустите сгенерированный для вас setupUi (this), внутри вашего MainWindow, и вы получите доступ ко всем виджетам, которые вы установили в качестве членов.Вы можете получить к ним доступ напрямую, как они были названы в Qt Designer.Пожалуйста, ознакомьтесь с одним из многочисленных руководств по началу работы с Qt.Вот тот, который показывает вам, как использовать ваш пользовательский интерфейс и получить доступ к членам из него: http://sector.ynet.sk/qt4-tutorial/my-first-qt-gui-application.html

2 голосов
/ 13 апреля 2012

Вы также можете получить список всех док-виджетов из главного окна с помощью

QList<QDockWidget *> dockWidgets = findChildren<QDockWidget *>();

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

...