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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] QMetaObject::invokeMethod  (Прочитано 7128 раз)
OKTA
Гость
« : Март 07, 2013, 00:40 »

Товарищи! Помогите! Не могу понять, в чем проблема так сказать!

Вызываю метод:
Код:
QMetaObject::invokeMethod(main, "writeSettingsToDB", Qt::QueuedConnection,
                                  Q_ARG(QVariantMap, map), Q_ARG(QString, table));

Он соответственно объявлен как:
Код:
void writeSettingsToDB(const QVariantMap &map, QString &table);

Но при этом, в дебаг вылазит :
Код:
QMetaObject::invokeMethod: No such method uMain::writeSettingsToDB(QVariantMap,QString)

Что может быть не так??
« Последнее редактирование: Март 07, 2013, 01:27 от OKTA » Записан
alexis031182
Гость
« Ответ #1 : Март 07, 2013, 00:52 »

writeSettingsToDB() слот?
Записан
OKTA
Гость
« Ответ #2 : Март 07, 2013, 00:54 »

Конечно!!
Записан
alexis031182
Гость
« Ответ #3 : Март 07, 2013, 01:01 »

Тогда единственное const и амперсенд
Записан
OKTA
Гость
« Ответ #4 : Март 07, 2013, 01:07 »

хм, да, дело было в &, а не const. Забавно конечно! И сразу вопрос специалисту не отходя от кассы! Хотел уточнить - если у меня два объекта в разных потоках, то напрямую вызывая слот соседнего объекта,  он исполнится в исходном потоке, верно?
Записан
alexis031182
Гость
« Ответ #5 : Март 07, 2013, 01:19 »

Да. Если вызывать напрямую, то исполнится в том потоке, из которого вызывают.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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