Как правильно загрузить .ui форму с собственными виджетами? |
Здравствуйте, гость ( Вход | Регистрация )
Как правильно загрузить .ui форму с собственными виджетами? |
mva |
6.4.2011, 23:16
Сообщение
#1
|
Участник Группа: Участник Сообщений: 104 Регистрация: 15.3.2009 Из: Киров Пользователь №: 615 Спасибо сказали: 3 раз(а) Репутация: 0 |
Добрый день всем!
У меня есть форма в виде отдельного файла .ui, которая загружается в программу по ходу работы. На этой форме имеются созданные мной виджеты. Форма была сгенерирована самой программой, при этом загружается в QtDesigner нормально и нормально в нем отображается. Проблема в том, что форма работает не стабильно, через раз выпадая по ошибке сегментирования. Вот так я загружаю форму:
Сбой обычно происходит во время поиска потомков на форме:
Я покопался отладчиком. Похоже, что у "самодельных" виджетов не хватает какой-то мета-информации. Как это победить? |
|
|
PAFOS |
7.4.2011, 8:03
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 258 Регистрация: 27.12.2010 Из: Дмитров Пользователь №: 2309 Спасибо сказали: 29 раз(а) Репутация: 8 |
Давай код ui. Там будем разбираться )
|
|
|
mva |
9.4.2011, 12:15
Сообщение
#3
|
Участник Группа: Участник Сообщений: 104 Регистрация: 15.3.2009 Из: Киров Пользователь №: 615 Спасибо сказали: 3 раз(а) Репутация: 0 |
Содержимое ui файла такое:
Сбой происходит на стандартных объектах QPushButton. |
|
|
mva |
9.4.2011, 19:52
Сообщение
#4
|
Участник Группа: Участник Сообщений: 104 Регистрация: 15.3.2009 Из: Киров Пользователь №: 615 Спасибо сказали: 3 раз(а) Репутация: 0 |
Кажется решил проблему. Заменил
QList<QPushButton*> widgets = formWidget->findChildren<QPushButton*>(); на QList<QPushButton*> widgets = qFindChildren<QPushButton*>(formWidget); Вроде бы глючить случайным образом перестало. Но корень проблемы по-прежнему не ясен. |
|
|
Текстовая версия | Сейчас: 15.1.2025, 2:05 |