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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Преобразовать QList<obj*> в QList<parent*>  (Прочитано 1852 раз)
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« : Апрель 24, 2014, 09:03 »

Собственно задача скомпилировать это:
foreach (QAbstractItemView* obj,       w->findChildren<QListView*>() + w->findChildren<QTreeView*>() + w->findChildren<QTableView*>() ) { ... }

Данный код находит дочерние объекты для QTableView, некрасиво(хочу первый способ):
foreach (QAbstractItemView* obj,       w->findChildren<QAbstractItemView*>() ) { ... }
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #1 : Апрель 24, 2014, 09:08 »

Ох чувствую, что задачу можно решить совсем по другому. Улыбающийся
Расскажите, что вы хотите сделать в конечном итоге?
Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #2 : Апрель 24, 2014, 09:32 »

Я хочу чтобы две формы созданные в ui выглядели одинаково, но с учетом разного разрешения и соответственно у каждой будет свой компоновщик формы + сохранение состояния.
Уже все работает и сейчас хочу оптимизировать код.

т.е. через foreach (QTableView *obj, findChildren<QTable....>) я соединяю сигналы от нужных элементов в свой слот. (потом в слоте я разбираю кто послал и перекидываю вид текущего элемента на аналогичные элементы на других экранах).

p.s. Можно это заменить одной строчкой?
    if(qobject_cast<QAbstractButton*>(sender())) eType = E_ABSTRACTBUTTON;
    if(qobject_cast<QComboBox*>(sender()))       eType = E_COMBOBOX;
    if(qobject_cast<QDateTimeEdit*>(sender()))   eType = E_DATETIMEEDIT;
........
qDebug()<<sender()->staticMetaObject.className(); - эта штука возвращает "QObject"

p.s.s. можно ли сигнал соединять через указатель на функцию?
connect(obj, signal[1](), this, SLOT(myslot))
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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