crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Прошу помощи, немогу отследить закрытие дочернего виджета
star62
  опции профиля:
сообщение 6.8.2009, 19:17
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 5.11.2008
Пользователь №: 410

Спасибо сказали: 0 раз(а)




Репутация:   0  


Вопрос вот в чем, в приложении создается потомок:
class Histogram : public QWidget (простое окно)

В его конструкторе есть такие строки
setAttribute(Qt::WA_DeleteOnClose);
setWindowFlags(Qt::Dialog);


в главном приложении обрабатываю сигнал destroyed потомка

И вот сдесь самое неожиданное (для меня), получив сигнал, основное прилождение виснет. Почему, не понимаю.
Раньше был крупный проект с такой же функциональностью и все работало, здесь просто ума нериложу о причинах.

Если connect на destroyed потомка убрать, все приходит в порядок, только вот мне надо знать когда дочернее окно будет закрыто пользователем.

ПомогиТЕ решить проблему.
Причина редактирования: обращение не к кому-то конкретному
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 6.8.2009, 19:48
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


на простейшем примере это воспроизводится?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
rnd
  опции профиля:
сообщение 6.8.2009, 21:16
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 54
Регистрация: 22.7.2009
Пользователь №: 930

Спасибо сказали: 1 раз(а)




Репутация:   0  


возвожно зацикливатеся связка сигнал-слот (это когда в обработчике сигнала, он эмитится опять - явно или неявно)

а вообще если вижуал студия - запустить под дебагом, а во время зацикливания нажать на паузу и посмотреть где висит
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
star62
  опции профиля:
сообщение 7.8.2009, 4:00
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 5.11.2008
Пользователь №: 410

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Litkevich Yuriy @ 6.8.2009, 23:48) *
на простейшем примере это воспроизводится?
Воспроизводиться.

Решил проблему через eventFilter. Ловлю QEvent::Close и все как по маслу
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 7.8.2009, 5:58
Сообщение #5


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(star62 @ 7.8.2009, 8:00) *
Воспроизводиться.
выложи его, интересно глянуть.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.3.2024, 12:30