KDevelop+QTDesigner . Азы ...

Автор: kiz Дата: 27.10.2003 23:30 Хело all.
Я вот тут учусь программить под KDevelop. Возник вопрос: например создаю я приложение с QT. Создал каркас (с помощью wizard'a или как оно там называется) Теперь проектирую форму через QTDesigner. Набросал всё что надо, появились у меня файлы вида myformdlg.cpp и myformdlg.h. В .cpp файле содержатся слоты. Вписываю я в них какой-то код. А потом, допустим надо мне бросить какой-нить компонент, на форму, я лезу обратно в QTDesigner, добавляю, а потом когда возвращаюсь обратно и всё пересобираю, файлы .cpp и .h создаются заново => весь мой код в них убивается. И шо - теперь всё заново переписывать ? Или применять технологию copy/paste ? Или может я в корне что-то неправильное делаю и есть какое-то 'нормальный' способ ?
Re: KDevelop+QTDesigner . Азы ... 28.10.2003 10:35alexhack Я конечно в QTDesigner давно ничего не пытался делать, больше под gtk делал. Но принцип, думаю что там, и тут одинаковый.

Думаю cpp и h файлы это загатовки для самого рисованного интерфейса, и править их не надо, они каждый раз заново воссоздаются с нуля, наверняка и обрабатывают только своблогику, не предназначены они для твоего кода. Значит и указывать какие функции надо вызывать надо тоже в qtdesigner. В том смысле, что в свойствах слота(в QTDEsigner) наверное можно указывать строчку кода, которая будет вставлена при генерации в указанный тобой слот, а там и пишешь типа
Object_Vasya::myfunc(Object_form.text);

В среде разработки Java NetBeans так делается, и в GTK+GLADE тоже, думаю у вас аналогично.
Re: KDevelop+QTDesigner . Азы ... 28.10.2003 12:43kiz В общем-то в доке по QT сегодня нарыл один способ, но он почему-то не работает. Там написано, что после сознаия .uic файла (так все объекты формы в виде скриптов описаны) на его основе создаются файлы вида myform.h и myform.cpp. А потом можно ручками создать файл myformimpl.h который будет в себя #include "myform.h" и файл myformimpl.cpp в котором будет #include "myformimpl.h". Поскольку слоты объявляются как виртуальные, то их можно перегрухить и в общем всё должно работать. Но у меня почему-то ругается, что мол multiple обьявление слотов (в myform.cpp я пишу void Form1::mySlot() {} ) Вот.
Re: KDevelop+QTDesigner . Азы ... 28.10.2003 14:30alexhack Судя по тому что ты написал, надо было сам код писать в myformimpl.cpp
В котором будет запись
#include "myformimpl.h"
В самом myformimpl.h будет запись
#include "myform.h"

И что я теперь думаю...

Думаю что надо создать свой класс, на основе класса MyForm, который описан в myform.h
В коде myformimpl.h
class Form1::MyForm
{
void Form1::mySlot(){}

}


И после этого как раз ошибка?

Свой myformimpl.cpp обрабатываешь компилятором так же как и сгенеренные файлы?

А то там частенько путаница возникает, что сначала надо moc компилятором обработать код и получить объектник, потом скомпилировать как обычно, а потом все вместе собрать.
Re: KDevelop+QTDesigner . Азы ... 29.10.2003 01:31kiz Попробовал сегодня сделать это, но компилятор обругался на строку
class Form1::MyForm
{
Говорит parse error before '{'
Потом пробовал создать класс стандартными средствами KDevelop. Тоже на что-то обругался. В общем как я только не извращался - не хочет и всё тут. Правда насчёт moc файлов ещё не разбирался. В общем иду дальше рыть доки. Как будет что-нибудь новое - сообщу Улыбка
Re: KDevelop+QTDesigner . Азы ... 29.10.2003 16:34ip82 Батенька с++ учить надо, а не КДевелоп.
class Form1 : public MyForm
{
}
Re: KDevelop+QTDesigner . Азы ... 29.10.2003 17:10kiz 2 ip82:
Да не, это-то понятно. Там в другом месте проблема была Улыбка

2 all:
Все, вроде сделал. По крайней мере разобрался что-там от чего должно наследоваться и где это нужно вписать. А вобще, нехило бы кратенький мануал написать, а то в таких исходниках чёрт ногу сломит. Желательно на русском.
Кстати, я там пока в доках рылса на сайте kdevelop, увидел, что вроде есть версия 3.0 alpha. Даже скрины посмотрел. Кто-нибудь её уже себе ставил ?
Re: KDevelop+QTDesigner . Азы ... 11.11.2003 19:25kompany Здесь исходники АНАНАСА есть на KDevelop+QTDesigner
может легче будет разобраться, сам я не програмер но
в 1С разбираюсь слегка, думал что здесь тоже просто,
но для меня это пока дремучий лес. Может мне когда
нибуть поможеш с места сдвинуться, а вот ссылка ананаса.

[ananas.linux.ru.net]
Re: KDevelop+QTDesigner . Азы ... 13.11.2003 21:29kiz Ну спасибо, конечно, за ссылку. Правда я уже разобрался с большинством вопросов. Кстати, если хочешь, в рунете есть более-менее подробный мануал по KDevelop'у. Там правда без особо в тонкости не вникают, но зато всё разобрано на примере и понять что к чему довольно легко. Ссылку не помню но в google.ru его точно можно найти (помоему keywords: kdevelop qtdesigner руководство).
RSS-материал