Название: Проблема с connect() Отправлено: kolob от Ноябрь 13, 2010, 11:32 Добрый день всем! Помогите решить проблему. Суть такова:
Форму создал в дизайнере. Там же подключил все нужные сигнал-слоты. Один из connect() пришлось писать в файле *.ui.h в одной из функции, которая вызывается из init() конструктора. При выполнении программы пишет в консоли следующее: Цитировать QObject::connect: No such slot MyDialog::func(int) И соответственно функция-слот func() не выполняется.QObject::connect: (sender name: 'unnamed') QObject::connect: (receiver name: 'MyDialog') Название: Re: Проблема с connect() Отправлено: merke от Ноябрь 13, 2010, 11:34 Что значит пришлось? а по другому ни как? ???
Название: Re: Проблема с connect() Отправлено: merke от Ноябрь 13, 2010, 11:35 Предоставь код
Название: Re: Проблема с connect() Отправлено: GreatSnake от Ноябрь 13, 2010, 11:36 Цитировать Один из connect() пришлось писать в файле *.ui.h Подозреваю речь идёт про qt3?Название: Re: Проблема с connect() Отправлено: kolob от Ноябрь 13, 2010, 11:57 Да именно qt3.
Вот часть кода *.h файла: Код: class QPopupMenu; Вот код *.ui.h файла: Код: void MyDialog::init() Название: Re: Проблема с connect() Отправлено: GreatSnake от Ноябрь 13, 2010, 12:07 Цитировать Да именно qt3. Вообще-то не мешало бы про это указывать изначально.А где сама func()? Название: Re: Проблема с connect() Отправлено: kolob от Ноябрь 13, 2010, 12:27 Код: void MyDialog::func(int num) Название: Re: Проблема с connect() Отправлено: GreatSnake от Ноябрь 13, 2010, 12:51 Хм, чего-то я не вижу проблем.
Название: Re: Проблема с connect() Отправлено: kolob от Ноябрь 13, 2010, 14:07 Но почему пишет в консоль
Цитировать QObject::connect: No such slot MyDialog::func(int) QObject::connect: (sender name: 'unnamed') QObject::connect: (receiver name: 'MyDialog') И фукция не выполняется. Смотрел сгенерированные файлы moc, там этот слот не прописан. Название: Re: Проблема с connect() Отправлено: kolob от Ноябрь 15, 2010, 07:41 Кто нибудь еще может помочь?
Название: Re: Проблема с connect() Отправлено: GreatSnake от Ноябрь 15, 2010, 09:01 Выкладывай *.ui и *.ui.h - будем смотреть.
Название: Re: Проблема с connect() Отправлено: kolob от Ноябрь 15, 2010, 09:46 Файл *.ui:
Код: <connections> Файл *.ui.h: Код: #include <qobject.h> Название: Re: Проблема с connect() Отправлено: GreatSnake от Ноябрь 15, 2010, 10:15 Ну и где в *.ui в <slots>
<slot>show(int)</slot>? И чего-то я не понял - вы что (см. выше "Вот часть кода *.h файла:" ) Код сами прописывали после того как его создал uic? Название: Re: Проблема с connect() Отправлено: kolob от Ноябрь 15, 2010, 12:54 Все сделал, работает. Всем спасибо. GreatSnake, да я сам после генерации дописал этот слот, в этом то и была моя ошибка!!!
Сейчас добавил его в дизайнере, сохранил, заново перекомпилил и все заработало и во всех файлах генерированных он прописался. |