Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: daenux от Ноябрь 17, 2010, 17:33



Название: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 17:33
Доброго времени!!!

Есть функция каторая объявлена как:

Код:
public slot:
  void fun();

Она соответственно вызываеться сигналом...

Когда раздаеться сигнал, и данная функция начинает выполняться - тогда нужно получить доступ к объектам класса parent()...

Если делать так (в рассматриваемой функции):

Код:
qDebug() << dynamic_cast<cС*>(this->parent())->isEnabled();

Тогда компилируеться код нормально, но при выполнении функции получаеться ошибка следующего характера:

Код:
warning: Can not parse XML syscalls information; XML support was disabled at compile time.

И
Код:
exited with code 0
...

Если так:

Код:
qDebug() << reinterpret_cast<cC*>(this->parent())->isEnabled();

Тогда все нормально, в выводе получаем true - т.е. доступ к объекту parent() имееться...

Но все же доступа к объектам класса parent() нет:

Цитировать
qDebug() << reinterpret_cast<cC*>(this->parentWidget())->Obect->Vector->isEmpty();

Получаеться:
Код:
warning: Can not parse XML syscalls information; XML support was disabled at compile time.
и выход с кодом 0...

Просветите меня пожалуйста!


Название: Re: На счет public slot функции в каторой нет доступа к объектам объека parent()
Отправлено: ufna от Ноябрь 17, 2010, 17:38
может быть qobject_cast?

и непонятно откуда тут ХМЛ


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 17:44
C qobject_cast то же что и с dynamic_cast...


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 17:45
Может как то "XML support was disabled at compile time" включить поддержку можно во время компиляции, хотя она и так включена...


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: ufna от Ноябрь 17, 2010, 17:49
код функции?


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 17:57
Три строки в функции:

Цитировать
qDebug() << "BEGIN";
qDebug() << reinterpret_cast<cC*>(this->parent())->Object->Vector->isEmpty();
qDebug() << "END";

До "END" - дело не доходит...


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 17:58
Пробывал пересобрать проект, но все равно...


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 18:56
Помойму что то с отладчиком gdb не то...


Название: Re: На счет public slot функции в каторой нет доступа к о
Отправлено: daenux от Ноябрь 17, 2010, 19:50
Установил библиотеку expat.sourceforge.net теперь ошибку не выдает но вылетает на том же месте...