Russian Qt Forum
Октябрь 02, 2024, 11:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Виджеты в QToolBar  (Прочитано 3042 раз)
qtист
Гость
« : Январь 27, 2010, 16:22 »

Создаётся QToolBar,туда пихаю разные виджеты с помощью
addWidget(tt),их может быть туева куча и всякие разные.

Как вообще узнать,сколько туда их напихано,и достучаться до определённого,
например до пятого(QPixmap) и перерисовать его(вставить другой QPixmap. Плачущий
Записан
BRE
Гость
« Ответ #1 : Январь 27, 2010, 17:22 »

Создаётся QToolBar,туда пихаю разные виджеты с помощью
addWidget(tt),их может быть туева куча и всякие разные.

Как вообще узнать,сколько туда их напихано,и достучаться до определённого,
например до пятого(QPixmap) и перерисовать его(вставить другой QPixmap. Плачущий
Можно сохранять указатели на нужные (или все) виджеты;
Можно сохранять указатели на действия, которые возвращает метод addWidget и получать указатель на него с помощью QToolBar::widgetForAction;
Можно получить список всех дочерних виджетов на QToolBar и найти нужный, например, по имени используя QObject::findChildren ( const QString & name = QString() ) const.
« Последнее редактирование: Январь 27, 2010, 17:45 от BRE » Записан
Akaiten
Гость
« Ответ #2 : Январь 27, 2010, 17:42 »

Код
C++ (Qt)
QToolBar toolbar;
...
// Получаем список действий, каждому widget'у на тулбаре соответствует действие
QList<QAction *> actList = toolbar.actions();
 
// Ищем в списке элементы типа QWidgetAction *, например через qobject_cast
foreach (QAction *act, actList)
{
 if (QWidgetAction *widgetAction = qobject_cast<QWidgetAction *>(act))
 {
    // твой widget
    QWidget *widget = widgetAction->defaultWidget();
 }
}
 
Записан
qtист
Гость
« Ответ #3 : Январь 27, 2010, 17:47 »

получилось:
QList<MultiLabel *> allvidget = toolTM.at(0)->findChildren<MultiLabel *>();
MultiLabel  - виджеты
toolTM - одна из тулбаров

спасибо  Строит глазки
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.065 секунд. Запросов: 21.