Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
eldar85 |
21.10.2011, 13:14
Сообщение
#1
|
![]() программист ![]() ![]() ![]() Группа: Участник Сообщений: 283 Регистрация: 2.1.2010 Из: Москва Пользователь №: 1348 Спасибо сказали: 0 раз(а) Репутация: 0
|
Добрый день. Раньше программировал в кьти креаторе и не задумывалсячто может возникнуть проблема в подключении сигналов и слотов.
Потом стал программировать на VS и на пол года оставил Qt, но видя какие ужасные интерфейсы получаются на VS решил подключить Qt в VS2010, всю ночь мучался с подключением, установил автоматом Qt c утилитой add_in_vs с офф сайта Qt, но оказалось что это только начало и придется сильно повазиться) но эту мат часть с горем попалам одалел, 3х часавая сборка библиотек с jim.exe и прописывание патчей в переменные среды помогла и вот я уже сделал Qt окно в дизайнере, открыт проект в vs2010, все отлично, но!!! примерчик то собвственно простой пока, тут только textEdit и кнопочка, просто попробовать все ли работает. В дизайнере кака я понял нельзя щелкнуть правой кнопкой мыши и выбрать перейти к слоту, создал паблик слот в MainWindow, и попробовал сразу из конструктора написать текс в textEdit и отлично написалось. затем сделал в том же конструкторе коннект кнопки и слоты и тишина... Даже когда пишешь сам конект, обычно вылазиют посказки что мол есть у кнопки такие то слоты и можно выбрать, тут же нет ни одного события которое можно выбрать у кнопки. т.е. я пишу так но ничего нет, прописал полностью от руки сигнал clicked()и ничего не происходит при нажатии на кнопку... ну и для наглядности покажу весь код чтобы более понятно было Как быть? Подскажите пожалуйста. ЗАранее благодарю Сообщение отредактировал eldar85 - 21.10.2011, 13:19 |
|
|
|
|
RazrFalcon |
21.10.2011, 13:29
Сообщение
#2
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
В консоль ничего не пишет?
Парочку замечаний: 1) Ui::MyClassClass *ui; 2) не а
|
|
|
|
|
BRE |
21.10.2011, 13:51
Сообщение
#3
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(RazrFalcon @ 21.10.2011, 14:29) Link Парочку замечаний: 1) Ui::MyClassClass *ui; Для чего? |
|
|
|
|
RazrFalcon |
21.10.2011, 13:57
Сообщение
#4
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Ну по дефолту то указатель
|
|
|
|
|
BRE |
21.10.2011, 14:04
Сообщение
#5
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(RazrFalcon @ 21.10.2011, 14:57) Link Ну по дефолту то указатель О каком дефолте идет речь? Если ты про примеры, то это личные предпочтения его автора. Есть три способа внедрения Ui-объекта и у каждого есть свои плюсы и минусы. Я вообще использую множественное наследование. |
|
|
|
|
eldar85 |
21.10.2011, 14:23
Сообщение
#6
|
![]() программист ![]() ![]() ![]() Группа: Участник Сообщений: 283 Регистрация: 2.1.2010 Из: Москва Пользователь №: 1348 Спасибо сказали: 0 раз(а) Репутация: 0
|
решил все еще раз перекомпилировать как написано здесь
Link сижу вот жду когда закончиться, ночью на это ушло часа три где то, но вылезло парочка ошибок. На всякий пожарный решил перекомпилить. А в консоль ничего не выводилось, как будто и ошибок то нет. Открывается мое окошечко с текст эдитом и кнопкой, пишется в текст эдите один раз то что я вызвал в конструкторе слот а потом при нажатии на кнопку просто тишина и все. Никаких сообщений в консоли ну и сигнал слот не срабатывает... Сообщение отредактировал eldar85 - 21.10.2011, 14:28 |
|
|
|
|
RazrFalcon |
21.10.2011, 15:26
Сообщение
#7
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Может:
Цитата QObject::connect(&ui.btPushMe, SIGNAL(clicked()), this, SLOT(ShowText())); BRE, в Qt Creator, при создании нового проекта. PS: я вообще ui не использую. Я сразу к объекту обращаюсь. |
|
|
|
|
eldar85 |
21.10.2011, 15:33
Сообщение
#8
|
![]() программист ![]() ![]() ![]() Группа: Участник Сообщений: 283 Регистрация: 2.1.2010 Из: Москва Пользователь №: 1348 Спасибо сказали: 0 раз(а) Репутация: 0
|
Пересборка библиотек решила проблему))) Но не совсем. Сигналы слоты соединяются, но при кампиляции релиза выходит такая ошибка
Link Что это вообще обозначает? Что он не может найти библиотеку в патче или рядом с ехе? но в папке system32 у меня заброшены все необходимые файлы для запуска прог, и в том числе QtCore4.dll и QtGui4.dll. Или в чем то другом проблема? Сообщение отредактировал eldar85 - 21.10.2011, 15:36 |
|
|
|
|
RazrFalcon |
21.10.2011, 15:36
Сообщение
#9
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
В винде не силен, но помойму он не видит либы.
|
|
|
|
|
eldar85 |
21.10.2011, 15:48
Сообщение
#10
|
![]() программист ![]() ![]() ![]() Группа: Участник Сообщений: 283 Регистрация: 2.1.2010 Из: Москва Пользователь №: 1348 Спасибо сказали: 0 раз(а) Репутация: 0
|
пять самых важных либ я закинул в system32 - QtCore4.dll и QtGui4.dll, QtNetwork..., mingw10.dll (или как то так точно не помню названия и libgcc... какая то такая тоже там есть. Все проги написанные на креаторе запускаются без проблем.
подкинул дллку к ехе и все равно ошибка только немного по другому выглядит Link Сообщение отредактировал eldar85 - 21.10.2011, 15:49 |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 22.12.2025, 10:01 |