Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt GUI _ Как найти виджет по имени?

Автор: Phoenix_nsk 10.4.2011, 19:52

Хочу найти виджет по его имени, суть такова, у меня есть несколько десятков виджетов и отличаются названия только цифрами, например:

abc_2;
abc_3;
...
abc_100500;

Хочу сделать примерно так:
for(int i = 2; i <= 10500; ++i)
  findByName("abc_" + QString::number(i))->setSmth(...);

Как можно найти виджет по его имени чтобы применить вышеописанный алгоритм? :rolleyes:

Автор: BRE 10.4.2011, 20:13

Посмотри на:
T QObject::findChild ( const QString & name = QString() ) const
QList<T> QObject::findChildren ( const QString & name = QString() ) const
QList<T> QObject::findChildren ( const QRegExp & regExp ) const

Автор: Litkevich Yuriy 11.4.2011, 7:23

Phoenix_nsk, имя переменной никак не отслеживается.
Тебе нужно задавать objectName интересующим объектам и затем пользоватся методами приведёнными BRE

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)