Почетак › Форуми › Линукс › Програмирање › QT4
- This topic has 26 одговора, 6 гласова, and was last updated 20 years, 1 month раније by
djvujke.
-
АуторЧланци
-
5. април 2006. у 4:59 pm #7219
djvujke
Учесникnabavio sam source qt4 i kompajlirao i instalirao
daklen lepo izgleda… i sta sad…napravio sam neki prozorcic ali
kod mora da kucam u kwrite,kate-u..u redu ali kako da povezem kod i ui fajl…znam uic komandom ali on generise heder ali tamo moj dialog ide preko namespace i neznam kako da pristupim mom prozoru.. kad kucam form.show() kaze to nemoze to nepostoji ili ko zna sta jos…5. април 2006. у 6:12 pm #42792pedjaman
УчесникNajbolje ti je da koristiš KDevelop poslednju verziju. Biće ti lakše odatle.
Inače, ako hoćeš iz običnog editora, treba da:
1. Kreiraš ručno qmake fajl sa extenzijom pro. Npr “mojprogram.pro” u kome navodiš opcije i elemente koje mora da ima tvoj program.
2. Zatim pozivaš qmake iz komandne linije u tom folderu,
3. zatim pozivaš make u tom folderu..pro fajl ti omogućava da sve automatizuješ.
Ako budeš imao konflikt sa Qt3, i neko čudno ponašanje, javi se da ti objasnim workaround.
Evo ti primer .pro fajla:
[code]
#tvoje forme
FORMS += logindlg.ui
mainwnd.ui
enterprisedlg.ui#tvoji h fajlovi
HEADERS += mojprogram.h
enterprisedlg.h
logindlg.h
mainwnd.h
interfaces.h#tvoji cpp fajlovi
SOURCES += main.cpp
mojprogram.cpp
enterprisedlg.cpp
logindlg.cpp
mainwnd.cpp#opcije
CONFIG += release warn_on# uključene komponente Qta
QT += sql xml#pravimo aplikaciju
TEMPLATE = app# naziv i putanja rezultujućeg programa
TARGET = ../bin/mojprogram
[/code]6. април 2006. у 3:07 pm #42793vladeck
Учесникhttp://doc.trolltech.com/4.0/qformbuilder.html
pomocu ove klase mozes dinamicki da ucitas .ui i povezes signale/slotove. nema potrebe da generises .hpp i .cpp fajlove, pa da nasledjujes…
6. април 2006. у 9:17 pm #42794unicorn
УчесникNe cini li vam se da novi qt jako lici na tekucu verziju Gnoma (vizuelno) ?!
6. април 2006. у 10:40 pm #42795pedjaman
Учесникhttp://doc.trolltech.com/4.0/qformbuilder.html
pomocu ove klase mozes dinamicki da ucitas .ui i povezes signale/slotove. nema potrebe da generises .hpp i .cpp fajlove, pa da nasledjujes…
Da, možeš i tako. Mada u Qt4 nema više klasičnog nasleđivanja. Nema generisanja cpp fajlova. SAmo napraviš jedan cpp i jedan h fajl, sa klasom npr
[code]
#include “ui_glavniprozor.h” // ako ti je fajl glavniprozor.uiclass GlavniProzor : public QMainWidget, public Ui::glavniporzor
{
GlavniProzor(QWidget* parent, int flags);
}
[/code]
i cpp fajl gde imaš
[code]
GlavniProzor::GlavniProzor(QWidget* parent, int flags)
: QWidget(parent, flags)
{
setupUi(this);// Povezivanje slotova, inicijalizacija,…
}
[/code]Malo sam kucao napamet, ali je su[tina ta 🙂
NAdam se da pomaže
7. април 2006. у 2:09 pm #42796djvujke
Учесникpostoji qmake -project
koji sam pravi project fajl, pa onda qmake i na kraju kucam make
ali kad napravim fajl.h iz fajl.ui..
neznam da pozovem taj moj dialog (Form) jer ide preko nekog.. ma neznam7. април 2006. у 4:49 pm #42797pedjaman
Учесникpostoji qmake -project
koji sam pravi project fajl, pa onda qmake i na kraju kucam make
ali kad napravim fajl.h iz fajl.ui..
neznam da pozovem taj moj dialog (Form) jer ide preko nekog.. ma neznamHe, he. Opet si odabrao neki čudan put 🙂
Kao što rekoh, kreiraj sam pro fajl prema upustvu i koristi način izvođenja koji sam ti pokazao i sve će raditi. Pogledaj reference i primere. Sve je tamo.Qt je zakon. Moćan, jednastavan (naravno posle malo učenja). Ma nemam reči…
NAPOMENA: Onaj ui_glavniprozor.h ne kreiraš ti. On će se sam kreirati. bitno je samo fda ga navedeš.
7. април 2006. у 9:20 pm #42798djvujke
Учесникcekaj, cekaj … aj polako
prvo pravim Ui_hello.ui koji ima QLabel i dugmence i i neke spasere isl…zatim main.cpp i pravim sad hello.h koji treba da izgleda …#include “Ui_hello.h”
class GlavniProzor : public QMainWidget, public Ui::Ui_hello
{ GlavniProzor(QWidget* parent, int flags); }i hello.cpp koji izgleda
GlavniProzor::GlavniProzor(QWidget* parent, int flags)
: QWidget(parent, flags) {
setupUi(this);
// Povezivanje slotova, inicijalizacija,…
}Jel to tacno? onaj Ui_helo on sam treba da generise a?
daj nesto mi tu nestima … kako moje dugmence da povezem ako ga nevidm…ne mi jasno…7. април 2006. у 10:47 pm #42799pedjaman
УчесникPazi,
ako praviš
“hello.ui”
onda
#include “ui_hello.h”
(sam će biti generisan “ui_hello.h” pri kompajliranju)E sad, kada si pravio ui fajl ti si dodelio ime dugmencetu pa onda ako si mu dodelio ime “Dugmence”
.h fajl
[code]
class GlavniProzor : public QMainWidget, public Ui::Ui_hello
{
Q_OBJECT
GlavniProzor(QWidget* parent, int flags);private slots:
void radiNesto();
}
[/code].cpp fajl
[code]
GlavniProzor::GlavniProzor(QWidget* parent, int flags)
: QWidget(parent, flags) {
setupUi(this);
// Povezivanje slotova, inicijalizacija,…
connect(Dugmence, SIGNAL(clicked()), this, SLOT(radiNesto()));}
GlavniProzor::radiNesto()
{
// Ovo se desava kad kliknes na dugme
}
[/code]12. април 2006. у 4:38 pm #42800djvujke
Учесникnije me bilo , a sad se s posla javljam … hvala na objasnjenu
cu da probam pa cu da javim kako je proslo… -
АуторЧланци
Мораш бити пријављен да би поставио коментар у овој теми.