Russian Qt Forum

Qt => Вопросы новичков => Тема начата: bk-201 от Апрель 08, 2012, 23:37



Название: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: bk-201 от Апрель 08, 2012, 23:37
Доброго времени суток)

Файлы с исходным кодом прикреплены в архиве.

В методе void MainWindow::closeEvent(QCloseEvent *event),
при вызове слота maWorkSpace->closeAllSubWindows(); программа аварийно завершается.
Не могу понять в чем проблема.

Есть идеи?

Заранее спасибо, что уделили время моему вопросу)))

p.s. Если будут замечания по коду, то тоже с удовольствием выслушаю.




Название: Re: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: mutineer от Апрель 08, 2012, 23:43
без .pro не собирается)))


Название: Re: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: bk-201 от Апрель 08, 2012, 23:48
Спасибо) Исправил)


Название: Re: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: mutineer от Апрель 08, 2012, 23:55
создал две вкладки, закрыл окно. вылетело в этой строке, потому что p = 0
Код:
void MainWindow::slotUpdateMenu(QMdiSubWindow *p)
{
MdiChild *pDoc = qobject_cast<MdiChild*>(p->widget());


Название: Re: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: bk-201 от Апрель 08, 2012, 23:59
создал две вкладки, закрыл окно. вылетело в этой строке, потому что p = 0
Код:
void MainWindow::slotUpdateMenu(QMdiSubWindow *p)
{
MdiChild *pDoc = qobject_cast<MdiChild*>(p->widget());

Да и правда здесь ошибка...
Спасибо, буду думать как исправить)


Название: Re: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: mutineer от Апрель 09, 2012, 00:02
если надо быстро и банально - if(!p) return;
но вообще лучше разберись почему оно так


Название: Re: Возникает ошибка в mdi приложении (текстовый редактор).
Отправлено: bk-201 от Апрель 09, 2012, 00:03
Пока, кажется, время есть, а если не останется, сделаю быстро и банально ;)