Задать вопрос
hummingbird
@hummingbird

Почему возникает ошибка «Нет такого слота»?

Здравствуйте!

Есть слоты. С ними проблем нет. Добавил по аналогии еще один.

В заголовочном файле в public slots: прописал void UserSettingsSave();
В методе void UserSettings(); прописал:
save_button->connect(save_button, SIGNAL(clicked(bool)), this, SLOT(UserSettingsSave()));

И не работает. Пишет:
QObject::connect: No such slot MainWindow::UserSettingsSave()
QObject::connect: (sender name: 'save_button')
QObject::connect: (receiver name: 'MainWindow')


Выше есть аналогичная строка:
profile_button->connect(profile_button, SIGNAL(clicked(bool)), this, SLOT(UserProfile()));

Которая прекрасно выполняет свою работу и не вызывает ошибок.
  • Вопрос задан
  • 1964 просмотра
Подписаться 1 Оценить 1 комментарий
Решения вопроса 1
Zifix
@Zifix Куратор тега Qt
Barbatum
  • Во-первых, profile_button-> в начале строки не нужен
  • Во-вторых, у вас не совпадают параметры сигналов и слотов, используйте просто clicked()
  • В третьих, попробуйте запустить qmake
  • В четвертых, почитайте про новый синтаксис сигналов и слотов
  • В пятых не принято называть методы с большой буквы, только классы
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Mercury13
Программист на «си с крестами» и не только
Иногда Qt Creator проглючивает и требуется полная перекомпиляция проекта.
Почему-то не запустился MOC.
Ответ написан
@jackroll
Сверхразум
Нам наверное нужно просмотреть весь код?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы