запуск одной формы из другой (Qt3) (обе созданы Disainer'ом)

Модератор: Модераторы разделов

mokynis
Сообщения: 48
ОС: KUbuntu 7.10

запуск одной формы из другой (Qt3)

Сообщение mokynis »

В QT Disigner созданы 2 формы: главная и простая, в 2 разных проектах.
Хочу запускать простую форму из главной.
В mainform.ui.h текст:

#include<qstatusbar.h>
#include<qlineedit.h>
#include "darform.h"

void mainForm::fileOpen()
{
/* darForm *darfrm=new darForm(this);
darfrm->show();
darfrm->raise();
darfrm->setActiveWindow(); */
darForm dialog(this);
dialog.exec();
}

При компиляции выдает ошибку:

mainform.cpp:(.text+0x12d): undefined reference to `darForm::darForm(QWidget*, char const*, bool, unsigned int)'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [mainwnd] Ошибка 1

В mainform.cpp действительно нет указания на 2-ю форму, но ведь там есть

#include "../mainform.ui.h"

Почему тогда не компилируется?
Спасибо сказали:
Аватара пользователя
whirlwind
Сообщения: 67

Re: запуск одной формы из другой (Qt3)

Сообщение whirlwind »

1. форму лучше создавать так, как у вас в закомментированном варианте (обьявлять указатель). Иначе функция завершится, память, отведенная под обьект будет освобождена.
2. в *.pro исходники второй формы упомянуты?
Добро всегда побеждает зло. Мы победили, значит мы - добро.
Спасибо сказали:
mokynis
Сообщения: 48
ОС: KUbuntu 7.10

Re: запуск одной формы из другой (Qt3)

Сообщение mokynis »

1. Раскомментировал. Результат не изменился.
2. в mainwnd.pro написано:

TEMPLATE = app
LANGUAGE = C++

CONFIG += qt warn_on release

HEADERS += darform.ui.h

SOURCES += main.cpp

FORMS = mainform.ui
,,,,,
то есть, вроде бы упомянуто.
Спасибо сказали:
mokynis
Сообщения: 48
ОС: KUbuntu 7.10

Re: запуск одной формы из другой (Qt3)

Сообщение mokynis »

Все решено. Я в проект включил оба файла-и darform.ui , и darform.ui.h
Все заработало. Спасибо за подсказку.
Спасибо сказали: