Russian Qt Forum
Ноябрь 23, 2024, 03:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Qt + codeblock + Windows  (Прочитано 15616 раз)
Boris
Гость
« : Июнь 05, 2006, 16:20 »

Qt 4.1.3 CodeBlock 1 rc2
Пытаюсь прикрутить ее к Codeblocks и есть проблемы:
1. после Designer'а получаеться ui файл (как я понял из него надо создать *.h и *.cpp) header делаеться легко командой uic *.ui -o *.h Как создать cpp файл я не могу понять.
2. При компиляции уже готовых проектов из примеров Qt по некоторым идут ошибки при линовке. Нужно прописывать Codeblock'у qmake и make. Как это сделать я тоже не понял

Здесь на сайте уже видел посты на эти темы но там вскольз мне хотелось бы поподробнее. Помогирте пожалуйста.
Записан
codeLocker
Гость
« Ответ #1 : Июнь 05, 2006, 17:04 »

"uic *.ui -o *.h" - это делать не надо.
Пропиши в файле проекта (.pro) в секциях SOURCES, FORMS и HEADERS файлы которые у тебя в проекте. Потом делаешь qmake и mingw32-make (если используешь MinGW). Так же посмотри что бы в переменной окружения path были пути к C:\Qt\4.1.3\bin\ и C:\MinGW\bin\ (это для моего случая).
qmake будет генерировать 3 файла Makefile, Makefile.Debug и Makefile.Release в которых и будет указана команда uic для всех файлов которые указаны в проекте в секции FORMS. Так же не забудь указать для классов которые используют механизм сигналов и слотов Q_OBJECT.
Записан
Boris
Гость
« Ответ #2 : Июнь 05, 2006, 17:24 »

Вот мой pro файл
Код:

HEADERS       = mainwindow.h
SOURCES       = main.cpp \
                mainwindow.cpp
RESOURCES     = application.qrc

# install
target.path = D:\Qt\4.1.3\examples\mainwindows\application
sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS application.pro images
sources.path = D:\Qt\4.1.3\examples\mainwindows\application
INSTALLS += target sources

Вот application.qrc
Код:

<!DOCTYPE RCC><RCC version="1.0">
<qresource>
    <file>images/copy.png</file>
    <file>images/cut.png</file>
    <file>images/new.png</file>
    <file>images/open.png</file>
    <file>images/paste.png</file>
    <file>images/save.png</file>
</qresource>
</RCC>

просто qmake в этой директории ничего не создает к нему нужны еще какие то параметры?
Записан
codeLocker
Гость
« Ответ #3 : Июнь 05, 2006, 17:46 »

Нухно в pro файле
Код:
FORMS = mainwindow.ui

если у тебя форма так называется
Записан
Boris
Гость
« Ответ #4 : Июнь 06, 2006, 08:22 »

Это пример из examples там нет  mainwindow.ui я его хотя бы скомпилить пытаюсь ничего не выходит пишит не найден make файл *** No rule to make target `Makefile'.  Stop. Как создать этот самый make файл - qmake не хочет создавать. Может какие-то дополнительные параметры нужны

добавлено спустя 1 час:

 Вроде разобрался:
Чтобы создать *.pro файл нужно запустить qmake -project
Чтобы создать Makefile, Makefile.Debug и Makefile.Release нужно qmake -makefile
Ну и уже затем mingw32-make.exe -f Makefile.Release.
Но из kodeblok почему-то отказываеться работать пишет [*** No rule to make target `default'.  Stop.] Хочеться именно в codebloks чтобы с отладчиком IDE была Грустный
Записан
codeLocker
Гость
« Ответ #5 : Июнь 06, 2006, 09:46 »

Тебе нужно в свойствах проекта добавить цели: release, debug и clean. Потом в зависимости от выбранной цели будет собераться проект.
Записан
Boris
Гость
« Ответ #6 : Июнь 06, 2006, 10:11 »

Спасибо это помогло. Могу нормально компилить проекты из examples

Теперь пробую создать свой проект: Грустный
1 Делаю ui файл;
2 Для него делаю qmake -project и qmake -makefile;
3 Запускаю mingw32-make.exe -f makefile;
После чего у меня в директории проекта появляеться ui_myproject.h (ui_myproject.cpp так и не создался)

Итог я так и не понял что нужно делать с ui файлом чтобы преобразовать его для компиляции проекта? Грустный

Доки с примерами так мало. А уж как подготовить проект к компиляции после Designer'a этого я и вовсе нигде не нашел Грустный
Записан
codeLocker
Гость
« Ответ #7 : Июнь 06, 2006, 10:38 »

Нужно в файле проекта  (pro) указать все файлы, которые у тебя в проекте (заголовочные, срр и формы). Не забыть для обертки класса который будет у тебя использовать форму созданую в дизайнере указать макрос Q_OBJECT. Вот пример моего файла с загаловками
Код:

#ifndef _CALENDAR_H_
#define _CALENDAR_H_

#include <QtGui>
#include "ui_calendar.h"

class Calendar : public QDialog, private Ui_Calendar{
Q_OBJECT
public:
Calendar(QWidget * parent = 0);
virtual ~Calendar();
bool selectDate(QDate & date);
protected:
bool eventFilter(QObject *obj, QEvent *event);
private:
QDate currDate;
void showMonth();
private slots:
void setDay();
void changeMY( QDate d );
};
#endif // _CALENDAR_H_
Записан
Boris
Гость
« Ответ #8 : Июнь 06, 2006, 10:58 »

А так cpp файлик надо самому писать автоматизированно из ui можно создать только .h - заголовочный файл?
Записан
codeLocker
Гость
« Ответ #9 : Июнь 06, 2006, 11:12 »

В Code::Blocks есть мастер создания классов, используй его.
Записан
Boris
Гость
« Ответ #10 : Июнь 06, 2006, 11:19 »

Так он переписывает и header файл и в cpp левое создает?
Записан
L.Marvell
Гость
« Ответ #11 : Июнь 06, 2006, 13:27 »

Читаем Assistant -> Overviews -> Qt Designer Manual ->Using Forms and Components
Записан
Boris
Гость
« Ответ #12 : Июнь 06, 2006, 15:15 »

Цитата: "L.Marvell"

Читаем Assistant -> Overviews -> Qt Designer Manual ->Using Forms and Сomponents


Я это уже читал. Выходит что в Qt 4 Designer что есть что нет. Толку от того что он мне поможет заголовочный файл создать из ui - минимум. Получаеться весь файл cpp к форме придется самому писать? Грустный
Записан
crocus
Гость
« Ответ #13 : Июнь 06, 2006, 15:47 »

Цитировать
Выходит что в Qt 4 Designer что есть что нет. Толку от того что он мне поможет заголовочный файл создать из ui - минимум. Получаеться весь файл cpp к форме придется самому писать?

Не он тебе сразу офисный пакет из трех твоих форм сгенерирует!!!
Абалдеть !!!
Ладно мануал на английском, так хоть Бланшет почитай что-ли (ее в сети много), этож никакого понимания что делаешь??
http://linuxcenter.ru/lib/books/qt3/
Записан
Boris
Гость
« Ответ #14 : Июнь 06, 2006, 15:53 »

Я с Builder'a. За ссылку спасибо. Понимания, правда, нет.
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.054 секунд. Запросов: 21.