В общем, я пишу приложение Qt. Раньше он работал нормально, но с тех пор, как я перенастроил некоторые имена файлов (в частности, давным-давно у меня были файлы с именами mainwindow.h и .cpp. Я переименовал их в net.h и .cpp соответственно, а недавно изменил вернуться к mainwindow.h и .cpp), он завершается с несколькими ошибками (во время выполнения):
Object::connect: No such slot QWidget::slotName()
Object::disconnect: No such signal QWidget::iconSizeChanged(QSize)
Object::disconnect: No such signal QWidget::toolButtonStyleChanged(Qt::ToolButtonStyle)
Object::connect: No such signal QWidget::iconSizeChanged(QSize)
Object::connect: No such signal QWidget::toolButtonStyleChanged(Qt::ToolButtonStyle)
Единственный слот, который я зарегистрировал в своем классе, — это первый, slotName. Я не уверен, почему он указан как член QWidget, а не моего класса (который является подклассом QWidget). Я знаю, что правильно объявил его, потому что нашел его в файле moc_mainwindow.cpp. И да, у меня есть Q_OBJECT в моем определении класса.
Также возникает другая ошибка, раз в секунду во время работы:
QWidget::metric: Invalid metric command
QPainter::begin: Paint device returned engine == 0, type: 143256176
Как я уже сказал, раньше все это работало отлично, поэтому я не буду публиковать огромные стены кода, если меня об этом не попросят. Я думаю, что это скорее проблема с кешем с QMake. Я пытался удалить все файлы moc, удалить файл проекта, очистить файл проекта и создать новый пустой Makefile и т. д. У кого-нибудь есть идеи?
#include "ui_filename.h"
внутри другого файла и не изменили ее обратно? Чисто снято в темноте, больше ничего явно неладного не вижу. - person tmpearce   schedule 23.06.2012.pro.user
- это настройки проекта, относящиеся к среде, например. закладки, расположение временных файлов сборки и т. д. - вам не нужно это удалять. - person cmannett85   schedule 23.06.2012