[C++] Qt Creator

C, C++, Java, PHP, Ruby...

Moderator/ica: Moderatori/ce

Pravila foruma
U naslovu teme unutar uglatih zagrada navesti o kojem jeziku je riječ. Primjer: [Java]
Odgovori
Avatar
stefan
Moderator
Postovi: 4366
Pridružen/a: 28 sij 2009, 18:46
Spol: M
OS: openSUSE Leap KDE

Re: [C++] Qt Creator

Post Postao/la stefan »

Ne znam da li sam te dobro shvatio... evo sourca. Moze i jos elegantnije, ali ovo ti je lakse za skuziti...

Ovako izgleda main.cpp

Kod: Označi sve

#include <QtGui/QApplication>
#include "windowa.h"
#include "windowb.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    WindowA wa;
    wa.show();
    WindowB wb;
    wb.show();

    QObject::connect(&wa,SIGNAL(hideB()),&wb,SLOT(hide()));
    QObject::connect(&wa,SIGNAL(showB()),&wb,SLOT(show()));

    QObject::connect(&wb,SIGNAL(hideA()),&wa,SLOT(hide()));
    QObject::connect(&wb,SIGNAL(showA()),&wa,SLOT(show()));

    return a.exec();
}
Javi ako nesto nije jasno.
Privitak/ci
twowindow.tar.gz
source
(1.57 KiB) Preuzeto 152 puta.
Like some other animals, the gecko can perform a neat trick when threatened by a predator: it can amputate its own tail. The dropped tail serves to distract the predator, and by losing it, the lizard can run faster.
maliodpalube
Postovi: 135
Pridružen/a: 18 stu 2010, 06:51
Spol: M
OS: Windows 7
Lokacija: Sesvetski Kraljevec

Re: [C++] Qt Creator

Post Postao/la maliodpalube »

Stefane, ti si car!
Zahvaljujem, skinuo sam i radi. Iako je malo zbunjujuće...donekle kužim.
Sljedeći korak je prijenos nekog texta iz lineEdit (ili bilo čega) s jedne forme u lineEdit (ili neku varijablu) na drugoj formi... Analogiju iz ovoga tvoga primjera s formama ne mogu dokučiti.
Zapravo, bio bih najsredniji kad bih te negdje mogao uhvatiti nekoliko sati. Lokacija Istra/Rijeka je tu, iza Jelenja. Skočim časkom...
Avatar
stefan
Moderator
Postovi: 4366
Pridružen/a: 28 sij 2009, 18:46
Spol: M
OS: openSUSE Leap KDE

Re: [C++] Qt Creator

Post Postao/la stefan »

ovako...
najbolji nacin za taj "prijenos" teskta su signali i slotovi.

signal deklariras (signals u .h) i emitiras sa funkcijom emit
slot je obicna funkcija koja se moze spojiti na neki signal ili vise njih (preko connect).

na neku akciju emitiras signal koji je spojen na slot u drugom prozoru. signal i slot moraju imati argument tipa QString.
probaj se igrati, sutra cu ti poslat kod.

sto se tice pomoci u zivo... dodji u rijeku pa cu odvojiti 2-3 sata. ali unaprijed pripremi pitanja :)
Like some other animals, the gecko can perform a neat trick when threatened by a predator: it can amputate its own tail. The dropped tail serves to distract the predator, and by losing it, the lizard can run faster.
Avatar
stefan
Moderator
Postovi: 4366
Pridružen/a: 28 sij 2009, 18:46
Spol: M
OS: openSUSE Leap KDE

Re: [C++] Qt Creator

Post Postao/la stefan »

evo...
postoji i laksi nacin, medjutim dobro je sto vise koristiti signale i slotove u Qt-u. Omogucava ti vecu fleksibilnost i puno lakse kasnije izmjene funkcionalnosti.

copy to B koristi samo jedan signal kojim salje text (QString) iz prozora A u prozor B.

copy from B koristi dva signala. jedan koji iz prozora A zahtjeva slanje teksta od prozora B i drugi koji salje QString iz prozora B u prozor A.

Probaj shvatiti filozofiju iza ovog... nakon toga ce ti sve biti jednostavnije...
Privitak/ci
twowindow.tar.gz
source
(1.83 KiB) Preuzeto 149 puta.
Like some other animals, the gecko can perform a neat trick when threatened by a predator: it can amputate its own tail. The dropped tail serves to distract the predator, and by losing it, the lizard can run faster.
maliodpalube
Postovi: 135
Pridružen/a: 18 stu 2010, 06:51
Spol: M
OS: Windows 7
Lokacija: Sesvetski Kraljevec

Re: [C++] Qt Creator

Post Postao/la maliodpalube »

Evo, tek sam večeras uspio pogledati ovo!
Dojam je... uf! Dosta zbrčkano i... nepraktično. Barem je prvi dojam takav. Kad je riječ o ovim mojim potrebama (kuhinje i kuhinjski elementi), onda za svaki elemenat trebam (primjerice) dvjestotinjak kojekakvih podataka iz druge forme, da bih s njima operirao u prvoj formi... i poslao ih (recimo) na treću formu za crtanje ili pak na četvrtu za izračune materijala.. petu za printanje ugovra itd. Ono što je u C++ builderu samo puka staza do nekog podatka (moja_string_varijabla=forma_ova.text_box_onaj.text), ovdje je najprije gomila deklaracija, konektanja i malih rutinica...
Žena me tjera na spavanje, pa ću sutra probati još malo mućkati oko te konstrukcije.
Stefane, hvala u svakom slučaju!
Odgovori