![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
abra |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
Ребят,всем привет!Вопрос такой.В QT4 не отображаются методы компонентов.
Например QLabel lbl; lbl-> У меня не высвечивается ничего(((ПРичем,если знать,что написать,он нормально компилится и работает.Но так не реально программировать,каждый раз обращаясь к мануалам,чтобы посмотреть,что там у компонента есть((( Подскажите пожалуйста,как быть...Даже из книжки если код вставить(я просто решил проверить),у меня тоже ничего не высвечивается...((( P.S Для тех,кто меня не совсем понял,пример подобный на Delphi. begin Label1. end; Должны высветиться свойства,методы и так далее(Например параметр Caption),а ничего не высвечивается.(НУ ТОЛЬКО МНЕ НА QT4 под VS2005,просто чтоб вы поняли суть,о чем я выше написал). Сообщение отредактировал Litkevich Yuriy - 13.1.2009, 17:48
Причина редактирования: Название соответствующее проблеме
|
|
|
![]() |
Litkevich Yuriy |
![]()
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Novak |
![]()
Сообщение
#3
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 319 Регистрация: 15.3.2008 Из: Замкадыш Пользователь №: 121 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Интегратор для студии стоит?
|
|
|
ViGOur |
![]()
Сообщение
#4
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
spirit |
![]()
Сообщение
#5
|
![]() Студент ![]() Группа: Новичок Сообщений: 16 Регистрация: 13.1.2009 Из: Ukraine, Krivoy Rog Пользователь №: 486 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Ребят,всем привет!Вопрос такой.В QT4 не отображаются методы компонентов. Например QLabel lbl; lbl-> У меня не высвечивается ничего(((ПРичем,если знать,что написать,он нормально компилится и работает.Но так не реально программировать,каждый раз обращаясь к мануалам,чтобы посмотреть,что там у компонента есть((( Подскажите пожалуйста,как быть...Даже из книжки если код вставить(я просто решил проверить),у меня тоже ничего не высвечивается...((( P.S Для тех,кто меня не совсем понял,пример подобный на Delphi. begin Label1. end; Должны высветиться свойства,методы и так далее(Например параметр Caption),а ничего не высвечивается.(НУ ТОЛЬКО МНЕ НА QT4 под VS2005,просто чтоб вы поняли суть,о чем я выше написал). причем тут интегратор и прочая лабуда? во-первых вы используете не указатель значит в это случае нужно использовать "." для доступа к методотам класса, во-вторых, так как вы создаете объект в стеке, то он тупо прибьется после выхода из области видимости, следовательно объект нужно создавать в куче использую оператор new. |
|
|
SABROG |
![]()
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
А вот eclipse все-равно что вбивать "." или "->", он все-равно показывает проиндексированные данные и методы объекта.
|
|
|
molchanoviv |
![]()
Сообщение
#7
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: ![]() ![]() ![]() |
Это неправильно. Хотя QtCreator тоже этот ужас переваривает.
|
|
|
kwisp |
![]()
Сообщение
#8
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
мож в студии есть code-completion и symbols browser. надо найти и настроить - прописать пути к библиотеке.
сам студией не пользуюсь не знаю где там это. |
|
|
kuler |
![]()
Сообщение
#9
|
![]() Танцор диско ![]() ![]() ![]() Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: ![]() ![]() ![]() |
по идее только хедеры должны быть подрублены и средой это должно поддерживаться, но у меня в студии к примеру она любит глючить и не показывает
|
|
|
abra |
![]()
Сообщение
#10
|
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
Зачем мне new???
Мне нужно обратиться к тому объекту,что существует на форме,а не создавать новый путем QLabel *lbl=new QLabel(); Теперь про ИНТЕГРАТОР. Интегратор у меня стоит.У меня было 2 файла.Один qt-4.3.3-commercial-vs2005 (вроде так называется).Я его установил.Второй файл,это вот VSintegrator,который интегрирует пакет в VSку мою. ДЛЯ ТЕХ КТО ТАМ ВОПРОС НЕ ПОНЯЛ. МЕТОДЫ,НЕ ВАЖНО КАК,ПРЯМЫМ ДОСТУПОМ,ИЛИ НЕТ,(. или ->) ЭТО НЕ ПРИНЦИПИАЛЬНО.НИ ТАК,НИ СЯК НИЧЕГО НЕ ВЫСВЕЧИВАЕТСЯ. Например QLabel *lbl=new QLabel() lbl->show(); У МЕНЯ после -> методы не выплывают.Мне приходится самому писать show().И он компилятся,все нормально.ВОПРОС,ДЛЯ ТЕХ,КТО НЕ ПОНЯЛ-КАК СДЕЛАТЬ ТАК,ЧТОБЫ МЕТОДЫ ОТОБРАЖАЛИСЬ.ПРОСЬБА НЕ ФЛУДИТЬ В ТЕМЕ,УВАЖАЙТЕ СЕБЯ,И ТОГО,КОМУ ОТВЕЧАЕТЕ.ЕСЛИ ВЫ СЧИТАЕТЕ,ЧТО ВЫ САМЫЕ УМНЫЕ,ОТВЕТЬТЕ ПО ТЕМЕ,А НЕ ЛЕВЫМ ФЛУДОМ.P.S ИЗВИНИТЕ,ЧТО ТАК ГРУБО,НО ПРОСТО НЕ ЛЮБЛЮ КОГДА ТАК ПОСТУПАЮТ,И САМ ТАК НЕ ПОСТУПАЮ. ПО поводу того,как обращаюсь. mainform.ui.lbl-> |
|
|
kuler |
![]()
Сообщение
#11
|
![]() Танцор диско ![]() ![]() ![]() Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: ![]() ![]() ![]() |
ctrl-пробел жмешь?
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#12
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
abra, научись формулировать вопрос, так и помощь быстрее прийдет.
|
|
|
abra |
![]()
Сообщение
#13
|
||||
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
Да,спасибо.Ctrl+пробел пробовал уже...((Не помогло...
Litkevich Yuriy Да я вроде нормально сформулировал.Осталось разве что на картинках показать=))) Вот на 2 файлах работает. Далее,начиная непосредственно с объекта,уже ничего не пашет. Такая же ситуация с кодом QLabel *lbl = new QLabel(); lbl-> Тоже ничего не выдает.Ну незнаю уже как обьяснить...Должны понять,не дураки думаю собрались то здесь. P.S переустановка не помогает. <QLabel>,<QWidget>,<QtGui> подключены. Вот точные пакеты: qt-win-commercial-4.3.5-vs2005 qt-vsintegration-1.3.3 Сначала установил первый,потом интегрировал его в среду ВСки. |
||||
|
|||||
kuler |
![]()
Сообщение
#14
|
![]() Танцор диско ![]() ![]() ![]() Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
spirit |
![]()
Сообщение
#15
|
![]() Студент ![]() Группа: Новичок Сообщений: 16 Регистрация: 13.1.2009 Из: Ukraine, Krivoy Rog Пользователь №: 486 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Зачем мне new??? Мне нужно обратиться к тому объекту,что существует на форме,а не создавать новый путем QLabel *lbl=new QLabel(); Теперь про ИНТЕГРАТОР. Интегратор у меня стоит.У меня было 2 файла.Один qt-4.3.3-commercial-vs2005 (вроде так называется).Я его установил.Второй файл,это вот VSintegrator,который интегрирует пакет в VSку мою. ДЛЯ ТЕХ КТО ТАМ ВОПРОС НЕ ПОНЯЛ. МЕТОДЫ,НЕ ВАЖНО КАК,ПРЯМЫМ ДОСТУПОМ,ИЛИ НЕТ,(. или ->) ЭТО НЕ ПРИНЦИПИАЛЬНО.НИ ТАК,НИ СЯК НИЧЕГО НЕ ВЫСВЕЧИВАЕТСЯ. Например QLabel *lbl=new QLabel() lbl->show(); У МЕНЯ после -> методы не выплывают.Мне приходится самому писать show().И он компилятся,все нормально.ВОПРОС,ДЛЯ ТЕХ,КТО НЕ ПОНЯЛ-КАК СДЕЛАТЬ ТАК,ЧТОБЫ МЕТОДЫ ОТОБРАЖАЛИСЬ.ПРОСЬБА НЕ ФЛУДИТЬ В ТЕМЕ,УВАЖАЙТЕ СЕБЯ,И ТОГО,КОМУ ОТВЕЧАЕТЕ.ЕСЛИ ВЫ СЧИТАЕТЕ,ЧТО ВЫ САМЫЕ УМНЫЕ,ОТВЕТЬТЕ ПО ТЕМЕ,А НЕ ЛЕВЫМ ФЛУДОМ.P.S ИЗВИНИТЕ,ЧТО ТАК ГРУБО,НО ПРОСТО НЕ ЛЮБЛЮ КОГДА ТАК ПОСТУПАЮТ,И САМ ТАК НЕ ПОСТУПАЮ. ПО поводу того,как обращаюсь. mainform.ui.lbl-> я так понял это одресовалось мне, ну да фиг с ним. проект перегенери и заново запусти или если уже так принципиально получать список методов и прочем фигни, то visual assistant будет будет в помощь. PS. и в предь не хами , а обдумывай названия темы. |
|
|
SABROG |
![]()
Сообщение
#16
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
На вот, может поможет: http://www.qtsoftware.com/developer/faqs/f...8-23.5900165993
P.S.: trolltech.com больше не существует, теперь они qtsoftware.com Грустно как-то... |
|
|
abra |
![]()
Сообщение
#17
|
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
На первых 2 фотках раскрываются варианты,а когда уже от объекта пытаешешься вызвать его свойства(последние 2 фотки),то ничего не высвечивается. Скачал еще вчера VA X.Не помог.Ваще бред какой то.Какие то левые методы set_Text,которых нет в VS. Бред какой то. Я его удалил.НО!Я проверял на QT4.Все равно ничего не высвечивалось. |
|
|
ViGOur |
![]()
Сообщение
#18
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Посмотри на другом проекте, например создай тестовый MFC проект и проверь code-completion на том же классе CString. (code-completion это как раз та штука, которая у тебя не работает).
p.s. у меня помнится только в 2003 студии были такие же глюки, помогала или полная перекомпиляция или создание проекта по новой, в 2005 такого не встречал пока. |
|
|
abra |
![]()
Сообщение
#19
|
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
Посмотри на другом проекте, например создай тестовый MFC проект и проверь code-completion на том же классе CString. (code-completion это как раз та штука, которая у тебя не работает). p.s. у меня помнится только в 2003 студии были такие же глюки, помогала или полная перекомпиляция или создание проекта по новой, в 2005 такого не встречал пока. А где найти code-completion?Что это такое вообще?Обьясни поподробнее пожалуйста. Ребят,еще вопрос. есть 2 формы. Одна main,другая auth main автоматически создается,auth вызывается.На main.cpp у меня прописан код подключения к базе. login lg; QSqlDatabase db = QSqlDatabase::addDatabase("QPSQL"); db.setHostName("localhost"); db.setDatabaseName("baza"); db.setUserName("pst"); db.setPassword("adm"); bool connected = db.open(); if (!connected) { QMessageBox::warning (NULL, QString::fromLocal8Bit ("Подключение к серверу"), QString::fromLocal8Bit ("Ошибка при подключении к БД"), QMessageBox::Ok); }; Подключает нормально. Я МОГУ НА КНОПКУ В ДРУГОЙ ФОРМЕ AUTH.UI, подвесить код QSqlQuery query; query.prepare("INSERT INTO user ( surname,grp)" "VALUES(:surname, :grp)"); query.bindValue(":surname", "loool"); query.bindValue(":grp", "2942"); query.exec(); if (!query.exec()) { QMessageBox::warning (NULL, QString::fromLocal8Bit ("Ошибка"), QString::fromLocal8Bit ("Ошибка при добавлении данных"), QMessageBox::Ok); } ??Если могу,то скажите пожалуйста,зависит ли здесь подключение от того,где код прописан?Просто с Делфи на PostgreSQL работали,проблем не было.Переходим На QT4. Трудновато.Поэтому не сердитесь,что такие вопросы задаю,вохможно для вас банальные. Просто суть в том,что у меня почему то не добавляется в базу данные,от QSqlQuery query; query.prepare("INSERT INTO user ( surname,grp)" "VALUES(:surname, :grp)"); query.bindValue(":surname", "loool"); query.bindValue(":grp", "2942"); query.exec(); if (!query.exec()) { QMessageBox::warning (NULL, QString::fromLocal8Bit ("Ошибка"), QString::fromLocal8Bit ("Ошибка при добавлении данных"), QMessageBox::Ok); } Все время выдается сообщение Ошибка при добавлении данных.(срабатывает обработчик). Если вставляю код подключения к базе,и код занесения в базу,то у меня выскакивает ошибка-Вначале код ошибку,а в скобках QtSqld4.dll Попробовал погуглить,чот не особо много нашел. |
|
|
SABROG |
![]()
Сообщение
#20
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
Я МОГУ НА КНОПКУ В ДРУГОЙ ФОРМЕ AUTH.UI, подвесить код?? Если могу,то скажите пожалуйста,зависит ли здесь подключение от того,где код прописан? Можешь, есть такая вещь как "default database"/"default connection". Проблемы могут возникнуть только если этих соединений у тебя несколько или код находится в разных потоках. Учись общаться с библиотекой. Спроси её что ей не нравится:
Еще вот этой кнопочкой научись пользоваться: ![]() Сообщение отредактировал SABROG - 13.1.2009, 23:43 |
|
|
ViGOur |
![]()
Сообщение
#21
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Посмотри что говорит query.lastError()
|
|
|
abra |
![]()
Сообщение
#22
|
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
Я МОГУ НА КНОПКУ В ДРУГОЙ ФОРМЕ AUTH.UI, подвесить код?? Если могу,то скажите пожалуйста,зависит ли здесь подключение от того,где код прописан? Можешь, есть такая вещь как "default database". Проблемы могут возникнуть только если этих соединений у тебя несколько или код находится в разных потоках. Значит я могу на начальной форме подвесить подключение к базе. А на другой форме,на кнопку,могу подвесить занесение данных в базу.Но только я должен сверху прописать #default database ?Или что?И где именно его прописывать.Где вызывается подключение в базе,или где разные обработчики(добавление,удаление,редактирование(другие формы)). Посмотри что говорит query.lastError() Driver not loaded. Мои ожидания оправдались.Видимо драва нет какого то.Ошибка вылезает на QtSqld4.dll зверя. Посмотри что говорит query.lastError() Driver not loaded. Мои ожидания оправдались.КОроче нет драва какого то,но в скобках написан вот этот зверь. QtSqld4.dll. |
|
|
SABROG |
![]()
Сообщение
#23
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
#default database Это какая-то злая препроцессорная команда о которой я никогда не слышал при изучении C++ :-D При создании QSqlQuery query(); без параметров подобным образом используется существующее подключение к базе данных, которое было добавлено через QSqlDatabase::addDatabase() ранее.
По умолчанию устанавливается только ODBC и SQLITE драйверы. Для остальных надо качать исходники и в configure прописывать компиляцию этих драйверов. |
|
|
ViGOur |
![]()
Сообщение
#24
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
в configure прописывать компиляцию этих драйверов. Не обязательно, достаточно собрать плагин: Как собрать QPSQL плагин под Windows (Не обращая внимание на то, что там написано QMYSQL, просто обычное копи\пасте при переводе ![]() |
|
|
abra |
![]()
Сообщение
#25
|
Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: ![]() ![]() ![]() |
в configure прописывать компиляцию этих драйверов. Не обязательно, достаточно собрать плагин: Как собрать QPSQL плагин под Windows (Не обращая внимание на то, что там написано QMYSQL, просто обычное копи\пасте при переводе ![]() Ты только не смейся сильно,но куда мне это копировать? cd %QTDIR%\src\plugins\sqldrivers\psql qmake "INCLUDEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\ms\libpq.lib" psql.pro nmake ? ![]() ![]() |
|
|
Litkevich Yuriy |
![]()
Сообщение
#26
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
abra, разделяй вопросы по разным темам, в этой теме только автодополнение обсуждается.
|
|
|
Гость_Гость_* |
![]()
Сообщение
#27
|
Гости ![]() |
Мне помогает периодическое нажатие "Project"->"Update Intellisense" (VStudio 2008).
|
|
|
flankerr |
![]()
Сообщение
#28
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
esaj |
![]()
Сообщение
#29
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 28.4.2012 Пользователь №: 3347 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Мне помогает периодическое нажатие "Project"->"Update Intellisense" (VStudio 2008). по моим наблюдениям гораздо эффективнее тупо удолять сам файл *.ncb vs 2008 нет "Project"->"Update Intellisense" удаление *.ncb не помогает. что делать??? |
|
|
Алексей1153 |
![]()
Сообщение
#30
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2943 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 1.6.2025, 20:45 |